(57)【要約】【課題】  特定のデータを格納するセルの位置が変動するテーブルにおいて、特定のデータを一意に同定することを可能とする。【解決手段】  例示用テーブル及び解析対象テーブルのデータの類似性に基づいた識別子行或いは識別子列を例示用テーブル中から選択し、当該識別子行或いは識別子列のデータを含むオブジェクトを例示用テーブル中から抽出するとともに、識別子行或いは識別子列のデータをオブジェクトの識別子と定める識別子・オブジェクト抽出部と、例示用テーブルから注目データを含む正例オブジェクトを抽出し、解析対象テーブルから正例オブジェクトの識別子と一致する識別子を含む注目オブジェクトを抽出するオブジェクト同定手段と、注目オブジェクトから、正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定する注目データ同定手段とを備える。【選択図】    図１
2005339126.tif 000002
【特許請求の範囲】
【請求項１】
各々データを格納する複数のセルにより行列を構成するテーブルを監視するテーブル監視装置であって、
例示用テーブル、解析対象テーブル、及び前記例示用テーブル中の注目データを特定する指定データを入力する入力手段と、
前記例示用テーブル及び前記解析対象テーブルのデータの類似性に基づいた識別子行或いは識別子列を前記例示用テーブル中から選択し、当該識別子行或いは識別子列のデータを含むオブジェクトを前記例示用テーブル中から抽出するとともに、前記識別子行或いは識別子列のデータを前記オブジェクトの識別子と定める識別子・オブジェクト抽出手段と、
前記例示用テーブルから前記注目データを含む正例オブジェクトを抽出し、前記解析対象テーブルから前記正例オブジェクトの識別子と一致する識別子を含む注目オブジェクトを抽出するオブジェクト同定手段と、
前記注目オブジェクトから、前記正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定する注目データ同定手段と、
を備えたことを特徴とするテーブル監視装置。
【請求項２】
前記入力手段は、前記解析対象テーブルを定期的に取得し、
この取得された解析対象テーブルにおいて前記注目データの同定が可能であった場合に、当該解析対象テーブルを新たな例示用テーブルとして更新する例示用テーブル更新手段を備えたことを特徴とする請求項１に記載のテーブル監視装置。
【請求項３】
各々データを格納する複数のセルにより行列を構成するテーブルを有するＷｅｂページを監視するＷｅｂページモニタリングシステムであって、
例示用の前記Ｗｅｂページと解析対象の前記Ｗｅｂページを通信ネットワークを介して取得するＷｅｂページ取得手段と、
前記例示用Ｗｅｂページ中の注目データを指定する注目データ指定入力手段と、
前記例示用Ｗｅｂページ中のテーブル、前記解析対象Ｗｅｂページ中のテーブル、及び前記注目データの指定データから、前記解析対象Ｗｅｂページのテーブル中の注目データを同定する請求項１又は２に記載のテーブル監視装置と、
前記テーブル監視装置により同定された注目データを記憶する記憶手段と、
前記記憶手段に記憶されている注目データと前記テーブル監視装置により得られた注目データとから、解析対象Ｗｅｂページ中の注目データの更新の有無を判定する判定手段と、
前記判定手段の判定結果を利用者に対して通知する通知手段と、
を備えたことを特徴とするＷｅｂページモニタリングシステム。
【請求項４】
各々データを格納する複数のセルにより行列を構成するテーブルを監視するためのコンピュータプログラムであって、
例示用テーブル、解析対象テーブル、及び前記例示用テーブル中の注目データを特定する指定データを入力する機能と、
前記例示用テーブル及び前記解析対象テーブルのデータの類似性に基づいた識別子行或いは識別子列を前記例示用テーブル中から選択し、当該識別子行或いは識別子列のデータを含むオブジェクトを前記例示用テーブル中から抽出するとともに、前記識別子行或いは識別子列のデータを前記オブジェクトの識別子と定める機能と、
前記例示用テーブルから前記注目データを含む正例オブジェクトを抽出し、前記解析対象テーブルから前記正例オブジェクトの識別子と一致する識別子を含む注目オブジェクトを抽出する機能と、
前記注目オブジェクトから、前記正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定する機能と、
をコンピュータに実現させることを特徴とするコンピュータプログラム。
【請求項５】
前記解析対象テーブルの入力機能において前記解析対象テーブルを定期的に取得し、
この取得された解析対象テーブルにおいて前記注目データの同定が可能であった場合に、当該解析対象テーブルを新たな例示用テーブルとして更新する機能をさらにコンピュータに実現させることを特徴とする請求項４に記載のコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テーブル監視装置、Ｗｅｂページモニタリングシステム、並びにそのテーブル監視装置をコンピュータを利用して実現するためのコンピュータプログラムに関する。
【背景技術】
【０００２】
近年、インターネット上のＷｅｂサイトで開設されるＷｅｂページによって、金融会社のアカウント情報提供サービスや株式情報提供サービス、天気予報情報提供サービス等の情報提供サービスが行われており、ユーザは時々刻々と変化する所望のデータをタイムリーに取得可能となっている。このような情報提供サービスを受ける場合、ユーザ自らが常時、Ｗｅｂページを閲覧し、提供されるデータの更新の有無をチェックすることは大変な負担である。このため、ユーザが注目する特定のデータを監視し、該特定データの更新有りを自動的に検知してユーザに通知することが要望されている。
【０００３】
従来、Ｗｅｂページ中のテーブル内に含まれる複数のデータを内容ごとに分割する技術として、例えば特許文献１に記載の技術が知られている。この従来技術では、Ｗｅｂページ中のテーブルを解析してデータを格納するセルの位置を示すセル位置データとセルの特徴を表現したセルベクトルとを生成し、テーブルタイプ（表か、レイアウトか）を判別する。そして、テーブルタイプが表の場合は、セル位置データとセルベクトルを参照してテーブルの分割方向（縦分割か横分割か）を決定し、この分割方向を参照してテーブルを分割し、セグメントを生成する。一方、テーブルタイプがレイアウトの場合は、セルベクトルを参照して各セルをクラスタリングし、セル位置データとセルクラスタ情報を参照してセグメントを生成する。これにより、Ｗｅｂページ中のテーブルを内容ごとに分割している。
【特許文献１】特開２０００−３３９３０１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、上述した従来技術では、特定のデータを格納するセルの位置がテーブル内で固定せず変動する場合、特定のデータを格納するセルを一意に同定することは困難であり、テーブル内に含まれる特定のデータを監視する目的に適用することができない。例えば、株式売買高の順位に従って各銘柄情報（例えば株価）を記載する株式売買高ランキングテーブルでは、日々変動する各銘柄の株式売買高順位に応じて各銘柄情報の記載位置が変動する。したがって、ユーザが注目する特定の銘柄の情報、例えば株価を監視するためには、該特定銘柄株価のテーブル内記載位置を確実に同定することが求められる。
【０００５】
本発明は、このような事情を考慮してなされたもので、その目的は、特定のデータを格納するセルの位置が変動するテーブルにおいて、特定のデータを一意に同定することができるテーブル監視装置を提供することにある。
【０００６】
また、本発明の他の目的は、本発明のテーブル監視装置を使用してＷｅｂページ中のテーブル内に含まれる特定のデータを監視することにより、ユーザが注目する特定のデータの更新有りを自動的に検知することができるＷｅｂページモニタリングシステムを提供することにある。
【０００７】
また、本発明の他の目的は、本発明のテーブル監視装置をコンピュータを利用して実現するためのコンピュータプログラムを提供することにある。
【課題を解決するための手段】
【０００８】
上記の課題を解決するために、本発明に係るテーブル監視装置は、各々データを格納する複数のセルにより行列を構成するテーブルを監視するテーブル監視装置であって、例示用テーブル、解析対象テーブル、及び前記例示用テーブル中の注目データを特定する指定データを入力する入力手段と、前記例示用テーブル及び前記解析対象テーブルのデータの類似性に基づいた識別子行或いは識別子列を前記例示用テーブル中から選択し、当該識別子行或いは識別子列のデータを含むオブジェクトを前記例示用テーブル中から抽出するとともに、前記識別子行或いは識別子列のデータを前記オブジェクトの識別子と定める識別子・オブジェクト抽出手段と、前記例示用テーブルから前記注目データを含む正例オブジェクトを抽出し、前記解析対象テーブルから前記正例オブジェクトの識別子と一致する識別子を含む注目オブジェクトを抽出するオブジェクト同定手段と、前記注目オブジェクトから、前記正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定する注目データ同定手段とを備えたことを特徴としている。
【０００９】
本発明に係るテーブル監視装置においては、前記入力手段は、前記解析対象テーブルを定期的に取得し、この取得された解析対象テーブルにおいて前記注目データの同定が可能であった場合に、当該解析対象テーブルを新たな例示用テーブルとして更新する例示用テーブル更新手段を備えたことを特徴とする。
【００１０】
本発明に係るＷｅｂページモニタリングシステムは、各々データを格納する複数のセルにより行列を構成するテーブルを有するＷｅｂページを監視するＷｅｂページモニタリングシステムであって、例示用の前記Ｗｅｂページと解析対象の前記Ｗｅｂページを通信ネットワークを介して取得するＷｅｂページ取得手段と、前記例示用Ｗｅｂページ中の注目データを指定する注目データ指定入力手段と、前記例示用Ｗｅｂページ中のテーブル、前記解析対象Ｗｅｂページ中のテーブル、及び前記注目データの指定データから、前記解析対象Ｗｅｂページのテーブル中の注目データを同定する前述の本発明に係るテーブル監視装置と、前記テーブル監視装置により同定された注目データを記憶する記憶手段と、前記記憶手段に記憶されている注目データと前記テーブル監視装置により得られた注目データとから、解析対象Ｗｅｂページ中の注目データの更新の有無を判定する判定手段と、前記判定手段の判定結果を利用者に対して通知する通知手段とを備えたことを特徴としている。
【００１１】
本発明に係るコンピュータプログラムは、各々データを格納する複数のセルにより行列を構成するテーブルを監視するためのコンピュータプログラムであって、例示用テーブル、解析対象テーブル、及び前記例示用テーブル中の注目データを特定する指定データを入力する機能と、前記例示用テーブル及び前記解析対象テーブルのデータの類似性に基づいた識別子行或いは識別子列を前記例示用テーブル中から選択し、当該識別子行或いは識別子列のデータを含むオブジェクトを前記例示用テーブル中から抽出するとともに、前記識別子行或いは識別子列のデータを前記オブジェクトの識別子と定める機能と、前記例示用テーブルから前記注目データを含む正例オブジェクトを抽出し、前記解析対象テーブルから前記正例オブジェクトの識別子と一致する識別子を含む注目オブジェクトを抽出する機能と、前記注目オブジェクトから、前記正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定する機能とをコンピュータに実現させることを特徴としている。
【００１２】
本発明に係るコンピュータプログラムにおいては、前記解析対象テーブルの入力機能において前記解析対象テーブルを定期的に取得し、この取得された解析対象テーブルにおいて前記注目データの同定が可能であった場合に、当該解析対象テーブルを新たな例示用テーブルとして更新する機能をさらにコンピュータに実現させることを特徴とする。
これにより、前述のテーブル監視装置がコンピュータを利用して実現できるようになる。
【発明の効果】
【００１３】
本発明によれば、日々変化又は移動するデータを含むテーブル同士のデータの類似性に着目し、オブジェクト単位で同定を行った後に注目データの同定を行うことにより、例示用テーブル中の注目データの一例を提示するだけで解析対象テーブル中の注目データを同定することができる。これにより、特定のデータを監視して更新有りを自動的に検知することができる。
【発明を実施するための最良の形態】
【００１４】
初めに本発明が扱うテーブルについての前提条件を説明する。
テーブルは、各々データを格納するセルを複数有し、複数のセルにより行列を構成する。
テーブルには同種のオブジェクトが複数並んでいる。例えば、株式売買高等のランキングや、週間天気予報などが記載されたテーブルを扱う。オブジェクトは複数のセルから構成される。
列方向に同種のデータが並ぶとともに行方向に関連するデータが並んでおり、一つの行には単数又は複数のオブジェクトが並んでいる。或いは、行方向に同種のデータが並ぶとともに列方向に関連するデータが並んでおり、一つの列には単数又は複数のオブジェクトが並んでいる。
オブジェクト単位で生成、削除、及びテーブル内の移動が行われる。
テーブルには値が変化しないデータの列又は行が一つ以上存在する。
【００１５】
以下、図面を参照し、本発明の一実施形態について説明する。本実施形態では、Ｗｅｂページ中のテーブル内に含まれる特定のデータを監視する装置を例に挙げて説明する。
図１は、本発明の一実施形態に係るテーブル監視装置１の構成を示すブロック図である。図１において、テーブル監視装置１は、入力部１１、識別子・オブジェクト抽出部１２、オブジェクト同定部１３、注目データ同定部１４、出力部１５及び例示用Ｗｅｂページ更新部１６を備える。
【００１６】
入力部１１は、Ｗｅｂページデータを入力する。Ｗｅｂページデータは例えばＨＴＭＬ（HyperText Markup Language）データである。Ｗｅｂページ中にはテーブル形式でデータが格納されている。入力されるＷｅｂページには、例示用と解析対象の２種類がある。例示用Ｗｅｂページは、ユーザが注目するデータ（注目データ）を指定するときに用いられたページである。また、入力部１１は、その注目データの指定データを入力する。解析対象Ｗｅｂページは、実際に注目データを同定する対象となるページである。例示用Ｗｅｂページと解析対象Ｗｅｂページは同一ＵＲＬ（Uniform Resource Locator）のページである。
【００１７】
識別子・オブジェクト抽出部１２は、例示用Ｗｅｂページと解析対象Ｗｅｂページの双方のテーブルについて、同一行同士をそれぞれ比較し、また同一列同士をそれぞれ比較し、完全に一致するテキストを順序に関係なく一定数以上含む行又は列のいずれか一つを例示用Ｗｅｂページのテーブルから選択する。ここで行が選択されたならば当該行を識別子行とし、一方、列が選択されたならば当該列を識別子列とする。そして、例示用Ｗｅｂページのテーブル中のセルの中から、識別子行ならば列方向、識別子列ならば行方向の全セルまたは一部のセルをオブジェクトとして切り出し、各オブジェクトと識別子行／識別子列が交差する位置のセルをオブジェクトの識別子とする。
【００１８】
オブジェクト同定部１３は、例示用Ｗｅｂページから注目データを含むオブジェクト（正例オブジェクト）を取り出す。そして、解析対象Ｗｅｂページから正例オブジェクトの識別子と一致する識別子を含むオブジェクトを切り出し、このオブジェクトを注目データが含まれるオブジェクト（注目オブジェクト）とする。なお、解析対象Ｗｅｂページ中に正例オブジェクトと一致するオブジェクトがない場合はエラーとし、同定不能とする。
【００１９】
注目データ同定部１４は、注目オブジェクトから、正例オブジェクト中の注目データの位置と同じ位置にあるデータを注目データとして同定し切り出す。
出力部１５は、注目データ同定部１４によって切り出された解析対象Ｗｅｂページ中の注目データを出力する。
【００２０】
例示用Ｗｅｂページ更新部１６は、オブジェクト識別子を正しく抽出するために、当該Ｗｅｂページの情報更新の周期（例えば１日や１時間など）の定数倍の周期で上記した処理（識別子・オブジェクトの抽出、オブジェクトの同定、注目データの同定）を繰り返す。そして、注目データの同定が可能であった場合、当該解析対象Ｗｅｂページを新たな例示用Ｗｅｂページとして更新する。なお、上記定数倍をいくつにするかは通信コストや負荷に応じて設定変更する。
【００２１】
上記したようにテーブル監視装置１は、Ｗｅｂページ中のテーブルのデータ構造の特徴を利用して関連するデータの集合（オブジェクト）を抽出し、注目データを含むオブジェクトの同定を行った後に注目データの同定を行う。これにより、ユーザが指定した注目データの値が変化したり、又は注目データの位置がテーブル内で移動したりする場合でも、例示用Ｗｅｂページ中の注目データの一例を提示するだけで、実際の解析対象Ｗｅｂページ中から当該注目データを同定することが可能となり、Ｗｅｂページ中から注目データを自動的かつ継続的に取得することを実現可能とするものである。
【００２２】
なお、本実施形態に係るテーブル監視装置は、専用のハードウェアにより実現されるものであってもよく、あるいはパーソナルコンピュータ等の汎用のコンピュータシステムにより構成され、図１に示される装置の各機能を実現するためのプログラムを実行することによりその機能を実現させるものであってもよい。
【００２３】
また、そのテーブル監視装置には、周辺機器として入力装置、表示装置等（いずれも図示せず）が接続されるものとする。ここで、入力装置とはキーボード、マウス等の入力デバイスのことをいう。表示装置とはＣＲＴ（Cathode Ray Tube）や液晶表示装置等のことをいう。
また、上記周辺機器については、テーブル監視装置に直接接続するものであってもよく、あるいは通信回線を介して接続するようにしてもよい。
【００２４】
次に、上記した図１に示すテーブル監視装置１の詳細な動作を説明する。図２〜図７は、図１に示すテーブル監視装置１の処理フロー図である。
先ず、図２において、利用者が利用者端末により例示用Ｗｅｂページ（Ｗｅｂ１）を見ながら注目データを指定する（ステップＳ１０１）。次いで、テーブル監視装置１は、例示用Ｗｅｂページ（Ｗｅｂ１）中から、指定された注目データを含むテーブルＴ１を取り出す（ステップＳ１０２）。次いで、テーブル監視装置１は、解析対象Ｗｅｂページ（Ｗｅｂ２）を取得する（ステップＳ１０３）。次いで、この解析対象Ｗｅｂページ（Ｗｅｂ２）中から、テーブルＴ１と同じテーブルＴ２を取り出す（ステップＳ１０４）。次いで、テーブルＴ１とテーブルＴ２からオブジェクトの識別子列、或いは識別子行を抽出する（ステップＳ１０５）。
【００２５】
ここで、図４、図５を参照して、ステップＳ１０５の識別子抽出処理を説明する。
先ず、識別子が行方向か、列方向かを判定する。
図４において、テーブルＴ１の「（行，列）＝（ｉ，ｊ）」番目のセルとテーブルＴ２のセルとを比較し（ステップＳ２０１）、テーブルＴ１の「（行，列）＝（ｉ，ｊ）」番目のセルの文字列と完全一致するセルがテーブルＴ２中にいくつあるかを全ての（ｉ，ｊ）について以下の条件Ａ１，Ａ２で算出し、２つのテーブル（行方向テーブル，列方向テーブル）を生成する（ステップＳ２０２）。
条件Ａ１；テーブルＴ１の（ｉ，ｊ）番目のセルの文字列が、テーブルＴ２のｉ行目に含まれている個数を計数する。行方向テーブル中の（ｉ，ｊ）番目のセルには条件Ａ１の計数結果を格納する。これにより、テーブルＴ１と同じ行列数の行方向テーブルが生成される。
条件Ａ２；テーブルＴ１の（ｉ，ｊ）番目のセルの文字列が、テーブルＴ２のｊ列目に含まれている個数を計数する。列方向テーブル中の（ｉ，ｊ）番目のセルには条件Ａ２の計数結果を格納する。これにより、テーブルＴ１と同じ行列数の行方向テーブルが生成される。
【００２６】
次いで、行方向テーブル又は列方向テーブルのいずれか一方をステップＳ２０３〜Ｓ２０９の手順で選択する。ステップＳ２０３では、２以上の数値を含むテーブルがあるかを判断する。この判断の結果が「ＹＥＳ」の場合、２以上の数値を含む方のテーブルを選択する（ステップＳ２０４）。一方、ステップＳ２０３の判断結果が「ＮＯ」の場合、テーブル中の数値の合計をテーブル毎に算出し、これら合計値を比較し、合計値が異なるかを判断する（ステップＳ２０５）。この判断の結果が「ＹＥＳ」の場合、合計値が大きい方のテーブルを選択する（ステップＳ２０６）。
【００２７】
一方、ステップＳ２０５の判断結果が「ＮＯ」の場合、以下の条件Ｂ１〜Ｂ４に従ってテーブルの選択を行う。
条件Ｂ１；テーブルＴ１の同一行に同じ文字列を含むセルがある場合は、行方向テーブルを選択する。
条件Ｂ２；テーブルＴ１の同一列に同じ文字列を含むセルがある場合は、列方向テーブルを選択する。
条件Ｂ３；テーブルＴ２の同一行に同じ文字列を含むセルがある場合は、行方向テーブルを選択する。
条件Ｂ４；テーブルＴ２の同一列に同じ文字列を含むセルがある場合は、列方向テーブルを選択する。
上記条件Ｂ１〜Ｂ４のいずれかに合致するかを判断し（ステップＳ２０７）、合致する場合には合致した条件でテーブルを選択する（ステップＳ２０８）。
【００２８】
一方、上記条件Ｂ１〜Ｂ４のいずれにも合致しない場合（ステップＳ２０７でＮＯ）、テーブルＴ１又はＴ２を用いてテーブル中のセル間の類似度を算出し、類似度の高い方向は行方向であるか、或いは列方向であるかを判定し、この類似度が高い方向と等しい方向のテーブルを選択する（ステップＳ２０９）。なお、上記類似度の算出方法については後述する。
【００２９】
上記した手順により行方向テーブル或いは列方向テーブルが選択されると、次に、この選択されたテーブルに基づいて図５の処理により識別子行或いは識別子列を求める。すなわち、行方向テーブルが選択されたならば識別子行を求める。一方、列方向テーブルが選択されたならば識別子列を求める。以下の説明では、行方向テーブルから識別子行を求める場合を例に挙げて説明するが、列方向テーブルから識別子列を求める場合も同様であり、行を列に、また上を左に、それぞれ読み替えればよい。なお、図５中のカッコ内の記載は列方向テーブルから識別子列を求める場合に対応している。
【００３０】
図５において、先ず、行方向のテーブルにおいて２以上の値を含む行を識別子行候補から除外する（ステップＳ２１０）。この結果、まだ２つ以上の識別子行候補が残っている場合（ステップＳ２１１でＹＥＳ）、テーブルＴ１の同一行に同じ文字列を含む複数のセルがあるときは当該行をさらに識別子行候補から除外する（ステップＳ２１２）。この結果、まだ２つ以上の識別子行候補が残っている場合（ステップＳ２１３でＹＥＳ）、テーブルＴ２の同一行に同じ文字列を含む複数のセルがあるときは当該行をさらに識別子行候補から除外する（ステップＳ２１４）。
【００３１】
この結果、まだ２つ以上の識別子行候補が残っている場合には（ステップＳ２１５でＹＥＳ）、行方向テーブルの（ｉ，ｊ）番目の値から列方向テーブルの（ｉ，ｊ）番目の値を引いた結果を格納した差分テーブルを生成し、差分テーブルで全てのセルの値が０である行をさらに識別子行候補から除外する（ステップＳ２１６）。この結果、まだ２つ以上の識別子行候補が残っている場合には（ステップＳ２１７でＹＥＳ）、複数識別子対応処理を実行する（ステップＳ２１８）。この結果、まだ２つ以上の識別子行候補が残っている場合には（ステップＳ２１９でＹＥＳ）、注目点（ユーザ指定された注目データ）を含む行をさらに識別子行候補から除外する（ステップＳ２２０）。この結果、まだ２つ以上の識別子行候補が残っている場合には（ステップＳ２２１でＹＥＳ）、再度、複数識別子対応処理を実行する（ステップＳ２２２）。この結果、まだ２つ以上の識別子行候補が残っている場合には（ステップＳ２２３でＹＥＳ）、残った識別子行候補のうち、一番上の行を識別子行として選択する（ステップＳ２２４）。なお、上記複数識別子対応処理については後述する。
【００３２】
他方、上記ステップＳ２１１で識別子行候補が２つ未満であった場合（ステップＳ２１１でＮＯ）、識別子行候補が０個であるか判断し（ステップＳ２３０）、識別子行候補が０個ならば（ステップＳ２３０でＹＥＳ）、識別子なしとして処理を終了する（ステップＳ２３１）。ここで、識別子行候補が１個ならば（ステップＳ２３０でＮＯ）、ステップＳ２４２へ進む。
また、上記ステップＳ２１３，Ｓ２１５，Ｓ２１７，Ｓ２２１のいずれかで識別子行候補が２つ未満であった場合（ステップＳ２１３，Ｓ２１５，Ｓ２１７，Ｓ２２１のいずれかでＮＯ）、識別子行候補が０個であるか判断する（ステップＳ２４０）。この判断の結果、識別子行候補が０個となっている場合には（ステップＳ２４０でＹＥＳ）、直前の候補除外処理を取り消した状態に戻して、一番上の識別子行候補を識別子行として選択する（ステップＳ２４１）。一方、ステップＳ２４０でＮＯならばステップＳ２４２へ進む。
また、上記ステップＳ２１９，Ｓ２２３のいずれかで識別子行候補が２つ未満であった場合は（ステップＳ２１９，Ｓ２２３のいずれかでＮＯ）、ステップＳ２４２へ進む。
次いで、ステップＳ２４２では、上記した処理の結果として選択された識別子行を設定する。
【００３３】
以上のステップＳ１０５の識別子抽出処理によって、識別子行或いは識別子列が抽出される。
【００３４】
説明を図２に戻す。ステップＳ１０６では、識別子行或いは識別子列が設定されたかを判断し、設定されていない場合には（ステップＳ１０６でＮＯ）、エラーを出力して処理を終了する。一方、識別子行或いは識別子列が設定されている場合には（ステップＳ１０６でＹＥＳ）、ステップＳ１０７へ進む。
【００３５】
以下の説明では、上記した識別子抽出処理で識別子列が抽出された場合を例に挙げて説明するが、識別子行が抽出された場合も同様であり、列を行に読み替えればよい。
ステップＳ１０７では、テーブルＴ１から行方向の全部または一部のセルをオブジェクトとして取り出し、各オブジェクトについて識別子列と交差するセルのテキストをそのオブジェクトの識別子（オブジェクト識別子）として割り当てる。
【００３６】
次いで、図３のステップＳ１１０では、注目点を含むテーブルＴ１のオブジェクトのオブジェクト識別子と同じテキストを含む行方向のオブジェクトを、テーブルＴ２から検索する。この検索の結果、該当するオブジェクトが見つからなかった場合は（ステップＳ１１１でＮＯ）、エラーを出力して処理を終了する。一方、該当する行方向のオブジェクトが見つかった場合には、当該オブジェクト中のセルのうち、テーブルＴ１のオブジェクト中の注目点のセルと同じ位置（同じ列）にあるセルを、テーブルＴ２の注目点のセル（注目データを含むセル）として利用者端末へ出力する（ステップＳ１１２）。
【００３７】
次に、図６を参照して、上記した複数識別子対応処理（図５のステップＳ２１８，Ｓ２２２）を説明する。以下の説明では、複数の識別子列が存在する場合を例に挙げて説明するが、複数の識別子行が存在する場合も同様であり、列を行に、また右を下に、また縦を横にそれぞれ読み替えればよい。なお、図６中のカッコ内の記載は複数の識別子行が存在する場合に対応している。
【００３８】
図６において、先ず、全ての識別子列の組み合わせについて各類似度を算出する（ステップＳ３０１）。この類似度算出方法は後述する。次いで、類似度と所定の閾値とを比較し、一つでも類似度が閾値以上である場合には（ステップＳ３０２でＹＥＳ）、識別子列同士が類似しており、オブジェクトが複数のオブジェクトに分かれる可能性があるため、ステップＳ３０３へ進み、更なる処理を実行する。
一方、全ての類似度が閾値未満である場合には（ステップＳ３０２でＮＯ）、識別子列同士が類似していないので、そのまま処理を終了する。
【００３９】
次いで、ステップＳ３０３では変数ｉを初期値“１”に設定する。次いで、類似している各識別子列についてｉ個右の列との間の類似度を算出し（ステップＳ３０４）、この類似度と閾値を比較し、閾値未満ならばそのまま処理を終了する（ステップＳ３０５でＮＯ）。一方、閾値以上ならば変数ｉに１加算する（ステップＳ３０６）。そして、ｉ番目の列が識別子列であるか又はｉ個右の列がないならば（ステップＳ３０７でＹＥＳ）ステップＳ３０８へ進み、そうでなければ（ステップＳ３０７でＮＯ）ステップＳ３０４へ戻る。これにより、類似している各識別子列について、隣り合う識別子列に挟まれた全ての列との間の類似度が算出される。次いで、ステップＳ３０８では、それら全ての類似度が閾値以上か否かを判断し、全類似度が閾値以上であればオブジェクトは２つ以上の識別子列によって分割されると設定する。次いで、識別子列から右に（ｉ−１）番目とｉ番目の間でテーブルＴ１を分割し、分割された２つのテーブルを左から順に縦方向につなぎ、新たなテーブルＴ１を生成する（ステップＳ３０９）。同様にテーブルＴ２についても分割後に縦方向につなぎ、新たなテーブルＴ２を生成する（ステップＳ３０９）。
【００４０】
次に、図７を参照して、上記した類似度算出処理を説明する。
図７において、先ず、比較対象の一方について、セル内の文字列を取り出し、変数ｉに初期値「１」を設定する（ステップＳ４０１）。次いで、取り出した文字列中のｉ番目の文字を取り出し、この文字が、数値ならば“Ｎ”に、ｉｍｇタグならば“Ｉ”に、ａタグならば“Ａ”に、その他のテキストならば“Ｔ”に、それぞれ置換する（ステップＳ４０３〜Ｓ４０９）。例えば、文字列“３月２３日（火）”は置換列“ＮＴＮＮＴＴＴＴ”に変換される。次いで、変数ｉに１加算し（ステップＳ４１０）、ｉ番目の文字が上記取り出した文字列中にあればステップＳ４０２に戻り（ステップＳ４１１でＹＥＳ）、無ければ比較対象のもう一方についても上記ステップＳ４０１〜Ｓ４１１の処理を行う（ステップＳ４１１でＮＯ、ステップＳ４１２）。次いで、各比較対象の置換列について、ＤＰマッチングを利用して、記号の組み合わせ方と記号列の長さから類似度を算出する。
【００４１】
次に、テーブル監視処理の具体例を示す。
図８は、例示用Ｗｅｂページ中のテーブルＴ１の具体例を示す図である。図９は、解析対象Ｗｅｂページ中のテーブルＴ２の具体例を示す図である。これらテーブルＴ１，Ｔ２は、天気予報情報を格納している。図８のテーブルＴ１中のセル１０１は、ユーザにより指定された注目データを含むセル（注目点）である。この例では、４日（日）の気温を注目する。そして、図９のテーブルＴ２では、その注目点のセル１０１’がテーブルＴ１における位置「５列目」から３列目に移動している。
【００４２】
図１０は、図８のテーブルＴ１と図９のテーブルＴ２に係る列方向テーブルである。図１１は、図８のテーブルＴ１と図９のテーブルＴ２に係る行方向テーブルである。これら列方向テーブルと行方向テーブルのうち、２以上の値を含むのは図１１の行方向テーブルのみであるので、識別子は行方向となる（図４のＳ２０３，Ｓ２０４参照）。
【００４３】
そして、図１１の行方向テーブルから２以上の値を含む行を除外することにより、残りの識別子行候補は１行目（ｉ＝１）と３行目（ｉ＝３）となる（図５のＳ２１０参照）。ここで、図５のＳ２１２，Ｓ２１４に該当する行は無いので、図１０の列方向テーブルと図１１の行方向テーブルに係る差分テーブルを生成する。この差分テーブルが図１２に示されている。この差分テーブルから全てのセルの値が０である行（３行目（ｉ＝３））をさらに識別子行候補から除外する（図５のＳ２１６参照）。これにより、識別子行候補は１行目（ｉ＝１）のみとなるので、１行目（ｉ＝１）が識別子行となる。
【００４４】
そして、図８のテーブルＴ１の列方向のオブジェクトのうち、セル１０１を含む列と１行目（識別子行）との交点のセルのテキスト“４日（日）”が、オブジェクト識別子となる。このオブジェクト識別子“４日（日）”と同じテキストを含む図９のテーブルＴ２中のオブジェクトは３列目であるので、この３列目のセルのうち、図８のテーブルＴ１の５列目中の注目点のセル１０１と同じ位置「３行目」にあるセル１０１’を、テーブルＴ２の注目点のセル（注目データを含むセル）であると同定する。
【００４５】
このように、本実施形態によれば、特定のデータを格納するセルの位置が変動するテーブルにおいて、特定のデータを一意に同定することができる。
【００４６】
図１３は、本発明の一実施形態に係るＷｅｂページモニタリングシステム２０の構成を示すブロック図である。図１３において、Ｗｅｂページモニタリングシステム２０は、図１のテーブル監視装置１、Ｗｅｂページ取得部２１、注目データ指定入力部２２、注目データ記憶部２３、比較部２４及び通知部２５を備える。
【００４７】
Ｗｅｂページ取得部２１は、ユーザ指定されたＵＲＬを使用して例示用Ｗｅｂページと解析対象Ｗｅｂページを通信ネットワークを介して取得する。例示用Ｗｅｂページは、注目データ指定入力部２２及びテーブル監視装置１に出力される。解析対象Ｗｅｂページはテーブル監視装置１に出力される。
注目データ指定入力部２２は、Ｗｅｂページ取得部２１により取得された例示用Ｗｅｂページからユーザ操作により注目データを指定する機能を有し、注目データを指定するデータをテーブル監視装置１へ出力する。
【００４８】
注目データ記憶部２３は、テーブル監視装置１により同定された解析対象Ｗｅｂページのテーブル中の注目データを記憶する。
比較部２４は、テーブル監視装置１により今回得られた解析対象Ｗｅｂページのテーブル中の注目データと、注目データ記憶部２３に前回記憶された注目データとを比較し、この比較結果を通知部２５へ出力する。
通知部２５は、比較部２４の比較結果から、解析対象Ｗｅｂページ中の注目データの更新の有無を利用者に対して通知する。例えば、更新有りの場合に電子メールで通知する。このとき、更新された最新の注目データを電子メールに記載してもよい。
これにより、テーブル監視装置１を使用してＷｅｂページ中のテーブル内に含まれる特定のデータを監視し、ユーザが注目する特定のデータの更新有りを自動的に検知することができる。
【００４９】
なお、図２〜図７に示す各ステップを実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによりテーブル監視処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものであってもよい。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、フラッシュメモリ等の書き込み可能な不揮発性メモリ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。
【００５０】
さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ（例えばＤＲＡＭ（Dynamic Random Access Memory））のように、一定時間プログラムを保持しているものも含むものとする。
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことをいう。
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【００５１】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、本発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【図面の簡単な説明】
【００５２】
【図１】本発明の一実施形態に係るテーブル監視装置１の構成を示すブロック図である。
【図２】図１に示すテーブル監視装置１の処理フロー図である。
【図３】図１に示すテーブル監視装置１の処理フロー図である。
【図４】図１に示すテーブル監視装置１の処理フロー図である。
【図５】図１に示すテーブル監視装置１の処理フロー図である。
【図６】図１に示すテーブル監視装置１の処理フロー図である。
【図７】図１に示すテーブル監視装置１の処理フロー図である。
【図８】例示用Ｗｅｂページ中のテーブルＴ１の具体例を示す図である。
【図９】解析対象Ｗｅｂページ中のテーブルＴ２の具体例を示す図である。
【図１０】図８のテーブルＴ１と図９のテーブルＴ２に係る列方向テーブルである。
【図１１】図８のテーブルＴ１と図９のテーブルＴ２に係る行方向テーブルである。
【図１２】図１０の列方向テーブルと図１１の行方向テーブルに係る差分テーブルである。
【図１３】本発明の一実施形態に係るＷｅｂページモニタリングシステム２０の構成を示すブロック図である。
【符号の説明】
【００５３】
１…テーブル監視装置、１１…入力部、１２…識別子・オブジェクト抽出部、１３…オブジェクト同定部、１４…注目データ同定部、１５…出力部、１６…例示用Ｗｅｂページ更新部、２０…Ｗｅｂページモニタリングシステム、２１…Ｗｅｂページ取得部、２２…注目データ指定入力部、２３…注目データ記憶部、２４…比較部、２５…通知部。
【図１】
2005339126.tif 000003
【図２】
2005339126.tif 000004
【図３】
2005339126.tif 000005
【図４】
2005339126.tif 000006
【図５】
2005339126.tif 000007
【図６】
2005339126.tif 000008
【図７】
2005339126.tif 000009
【図８】
2005339126.tif 000010
【図９】
2005339126.tif 000011
【図１０】
2005339126.tif 000012
【図１１】
2005339126.tif 000013
【図１２】
2005339126.tif 000014
【図１３】
2005339126.tif 000015