(57)【要約】【課題】  無線タグリーダで検出されたイベント情報同士の関係や状態変化を利用して、イベント情報を記憶するデータ量を削減する手段を提供する【解決手段】  イベント処理サーバ５は、センサ４が同じ時刻にタグ１、２、３のタグＩＤを受信したことを示すイベント情報を受信したとき、そのタグＩＤの中から１つのタグＩＤを親タグＩＤとし、それ以外の１以上のタグＩＤを子タグＩＤとして、時刻、センサＩＤおよび親タグＩＤからなる１つのイベント情報の追加をＤＢサーバ６に指示する。また、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤからなる新たな関係情報の追加をＤＢサーバ６に指示する。更に、イベント処理サーバ５は、センサ４から受信したイベント情報におけるタグＩＤのデータが、同一のセンサ４から前回受信したイベント情報から変化したとき、イベント情報の追加をＤＢサーバ６に指示する。ＤＢサーバ６は、それらの指示をＤＢ７に転送する。【選択図】      図１
2005228268.tif 000002
【特許請求の範囲】
【請求項１】
固有の番号であるタグＩＤを持ち、無線タグリーダからのスキャン信号の受信に応じてタグＩＤを送信する無線タグを所定の物品に付して、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムであって、
前記無線タグ情報処理システムは、
物品の移動経路上に設置されると共に、位置管理され、固有の番号であるセンサＩＤを持ち、所定のタイミングでスキャン信号を発信し、その発信の応答として前記無線タグからのタグＩＤを検出し、そのときの時刻、センサＩＤおよび検出したタグＩＤからなるイベント情報をネットワーク経由でイベント処理サーバに送信する無線タグリーダと、
前記無線タグリーダからイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバと、
前記イベント処理サーバから指示を受けてイベント情報の追加を行うデータベースと、
を備え、
前記イベント処理サーバは、前記無線タグリーダから同じ時刻に複数のタグＩＤを検出したことを示すイベント情報を受信したとき、その複数のタグＩＤの中から１つのタグＩＤを親タグＩＤとし、それ以外の１以上のタグＩＤを子タグＩＤとして、時刻、センサＩＤおよび親タグＩＤからなる１つのイベント情報の追加を前記データベースに指示すると共に、親タグＩＤと子タグＩＤとの関係が、前回までに受信したイベント情報から変化したとき、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤからなる関係情報の追加を前記データベースに指示する
ことを特徴とする無線タグ情報処理システム。
【請求項２】
前記無線タグ情報処理システムは、
所定のタグＩＤのイベント情報を収集するために、そのタグＩＤを検索条件とするイベント情報の検索をネットワーク経由で前記イベント処理サーバに指示するクライアントを備え、
前記イベント処理サーバは、
そのタグＩＤを検索条件とするイベント情報の検索を前記データベースに指示し、その検索条件に該当するイベント情報があったとき、そのイベント情報を前記クライアントに送信すると共に、
そのタグＩＤが子タグＩＤであることを検索条件とする関係情報の検索を前記データベースに指示し、その検索条件に該当する関係情報があったとき、その関係情報の親タグＩＤがタグＩＤであることを検索条件とするイベント情報の検索を前記データベースに指示し、その検索条件に該当するイベント情報を前記クライアントに送信する
ことを特徴とする請求項１に記載の無線タグ情報処理システム。
【請求項３】
固有の番号であるタグＩＤを持ち、無線タグリーダからのスキャン信号の受信に応じてタグＩＤを送信する無線タグを所定の物品に付して、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムであって、
前記無線タグ情報処理システムは、
物品の移動経路上に設置されると共に、位置管理され、固有の番号であるセンサＩＤを持ち、所定のタイミングでスキャン信号を発信し、その発信の応答として前記無線タグからのタグＩＤを検出し、そのときの時刻、センサＩＤおよび検出したタグＩＤのデータからなるイベント情報をネットワーク経由でイベント処理サーバに送信する無線タグリーダと、
前記無線タグリーダからイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバと、
前記イベント処理サーバから指示を受けてイベント情報の追加を行うデータベースと、
を備え、
前記無線タグリーダは、
スキャン信号の発信に対してタグＩＤを検出できなかったとき、そのときの時刻、センサＩＤおよび検出したタグＩＤがないことを示すデータからなるイベント情報をネットワーク経由でイベント処理サーバに送信し、
前記イベント処理サーバは、
前記無線タグリーダから受信したイベント情報におけるタグＩＤのデータが示す検出または非検出の状態が、同一の前記無線タグリーダから前回受信したイベント情報から変化したとき、その検出または非検出の状態を示すデータを付加したイベント情報の追加を前記データベースに指示する
ことを特徴とする無線タグ情報処理システム。
【請求項４】
前記無線タグ情報処理システムは、
所定の時刻および所定のタグＩＤのイベント情報を取得するために、その時刻およびそのタグＩＤを検索条件とするイベント情報の検索をネットワーク経由で前記イベント処理サーバに指示するクライアントを備え、
前記イベント処理サーバは、
その時刻またはその時刻より前で最も近い時刻、そのタグＩＤおよび検出の状態を検索条件とするイベント情報の検索を前記データベースに指示し、その検索条件に該当するイベント情報があったとき、そのイベント情報を前記クライアントに送信する
ことを特徴とする請求項３に記載の無線タグ情報処理システム。
【請求項５】
無線タグを物品に付し、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムにおいて、位置管理され、固有の番号であるセンサＩＤを持つ無線タグリーダから、無線タグに固有の番号であるタグＩＤを含むイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバが行う無線タグ情報処理方法であって、
前記無線タグリーダから同じ時刻に複数のタグＩＤを検出したことを示すイベント情報を受信するステップと、
前記複数のタグＩＤの中から１つのタグＩＤを親タグＩＤとし、それ以外の１以上のタグＩＤを子タグＩＤとして設定するステップと、
時刻、センサＩＤおよび親タグＩＤからなる１つのイベント情報の追加を前記データベースに指示するステップと、
親タグＩＤと子タグＩＤとの関係が、前回までに受信したイベント情報から変化したとき、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤからなる関係情報の追加を前記データベースに指示するステップと、
を含むことを特徴とする無線タグ情報処理方法。
【請求項６】
クライアントからタグＩＤを検索条件としてイベント情報を検索する指示を受信するステップと、
前記タグＩＤを検索条件とするイベント情報の検索を前記データベースに指示するステップと、
その検索条件に該当するイベント情報があったとき、そのイベント情報を前記クライアントに送信するステップと、
前記タグＩＤが子タグＩＤであることを検索条件とする関係情報の検索を前記データベースに指示するステップと、
その検索条件に該当する関係情報があったとき、その関係情報の親タグＩＤがタグＩＤであることを検索条件とするイベント情報の検索を前記データベースに指示するステップと、
その検索条件に該当するイベント情報を前記クライアントに送信するステップと、
を更に含むことを特徴とする請求項５に記載に無線タグ情報処理方法。
【請求項７】
無線タグを物品に付し、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムにおいて、位置管理され、固有の番号であるセンサＩＤを持つ無線タグリーダから、無線タグに固有の番号であるタグＩＤを含むイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバが行う無線タグ情報処理方法であって、
無線タグリーダから、タグＩＤの検出状況に応じて、そのときの時刻、センサＩＤおよび検出したタグＩＤのデータからなるイベント情報またはそのときの時刻、センサＩＤおよび検出したタグＩＤがないことを示すデータからなるイベント情報を受信するステップと、
前記イベント情報におけるタグＩＤのデータが示す検出または非検出の状態が、同一の前記無線タグリーダから前回受信したイベント情報から変化したとき、その検出または非検出の状態を示すデータを付加したイベント情報の追加を前記データベースに指示するステップと、
を含むことを特徴とする無線タグ情報処理方法。
【請求項８】
クライアントから時刻およびタグＩＤを検索条件としてイベント情報を検索する指示を受信するステップと、
その時刻またはその時刻より前で最も近い時刻、そのタグＩＤおよび検出の状態を検索条件とするイベント情報の検索を前記データベースに指示するステップと、
その検索条件に該当するイベント情報があったとき、そのイベント情報を前記クライアントに送信するステップと、
を更に含むことを特徴とする請求項７に記載の無線タグ情報処理方法。
【請求項９】
請求項５ないし請求項８のいずれか一項に記載の無線タグ情報処理方法を、コンピュータに実行させることを特徴とする無線タグ情報処理プログラム。
【請求項１０】
無線タグリーダを含むセンサと、そのセンサによって検出されたイベント情報を格納するイベント処理サーバと、そのイベント処理サーバに格納されたイベント情報を参照するクライアントとが、ネットワークを介して接続されて構成されるイベント情報処理システムにおけるイベント処理サーバであって、
前記イベント処理サーバは、
前記センサからイベント情報を受信する手段と、
前回受信したイベント情報を保持する手段と、
前回受信したイベント情報と新たに受信したイベント情報との差異を検出する手段と、
その差異が検出されたとき、新たに受信したイベント情報を格納する手段と、
前記センサによって生成されたイベント情報に複数の物品が関わっていたとき、そのイベント情報に関わる複数の物品同士の関係が変化するごとに、その関係を示す関係情報を格納する手段と、
そのイベント情報に関わる複数の物品のうち代表である１つの物品に関するイベント情報を格納する手段と、
前記クライアントから参照されたとき、前記物品同士の関係を示す関係情報と、代表である１つの物品に関するイベント情報とから、代表以外の物品に関するイベント情報を参照することを可能とする手段と、
を備え、
重複した内容を持つイベント情報および関係情報のデータを格納しないように動作する
ことを特徴とするイベント処理サーバ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、無線タグリーダまたは無線タグリーダを含むセンサがネットワークを介して送信するイベント情報を効率よく格納する無線タグ情報処理システム、無線タグ情報処理方法、無線タグ情報処理プログラムおよびイベント処理サーバに関する。
【背景技術】
【０００２】
無線タグは、一般に、ＲＦＩＤ（Radio Frequency Identification）タグまたはＩＣ（Integrated Circuit）タグと呼ばれるものであり、物品（商品など）に貼付、内装するなどして付され、その付された物品の識別に利用される無線ＩＣチップである。無線タグには、タグ自身の識別コードであるタグＩＤなどの情報が記録されており、無線通信を使って無線タグリーダと情報を送受信する機能を持つ。無線タグリーダは、ネットワークを介して、例えば、無線タグの移動経路を監視するようなシステムに接続され、タグＩＤなどの情報を逐次そのシステムに送信する。そのシステムでは、逐次送信されて来る情報に基づいて、所定のタグＩＤを持つタグの移動経路を表示する機能などを実現する。なお、無線タグリーダ、温度センサ、湿度センサなどから構成されるセンサが、その無線タグリーダなどによって検出された情報をシステムに送信するような構成もある。
このようなシステムには、例えば、ＥＰＣ  ｇｌｏｂａｌで検討されているＥＰＣシステムがある。ここで、ＥＰＣ  ｇｌｏｂａｌは、流通商品にＩＤを付与し、それによって流通商品を管理するためのＥＰＣ（Electronic Product Code）ネットワークの標準化を推進し、管理する団体である。ＥＰＣシステムにおいて注目される技術としては、センサから収集された情報を処理するＳａｖａｎｔ（非特許文献１参照）、ネットワークから収集されたイベント情報を記述するための言語であるＰＭＬ（Physical Markup Language）（非特許文献２参照）、収集された情報に関する情報を提供するＥＰＣ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｓｅｒｖｉｃｅ（非特許文献１、２参照）などがあげられる。
【非特許文献１】Sean Clark、他３名、“Auto-ID Savant Specification 1.0”、［online］、２００３年９月１日、Auto-ID Center(R)、［２００４年２月９日検索］、インターネット＜ＵＲＬ：http://www.epcglobalinc.org/standards＿technology/Secure/v1.0/WD-savant-1＿0-20030911.doc＞
【非特許文献２】Christian Floerkemeier、他３名、“PML Core Specification 1.0”、［online］、２００３年９月１５日、Auto-ID Center(R)、［２００４年２月９日検索］、インターネット＜ＵＲＬ：http://www.epcglobalinc.org/standards＿technology/Secure/v1.0/PML＿Core＿Specification＿v1.0.pdf＞
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来のシステムは、無線タグリーダ、温度センサ、湿度センサなどからなるセンサにより定期的に送信されて来るイベント情報をそのままの形式で記憶しているため、すぐにデータ量が膨大になり、大量の記憶装置の導入や増設が不可欠であるという問題がある。無線タグが付された流通商品の個数、その流通商品の移動経路を監視するために各地点に設置される無線タグリーダまたはセンサの台数を考慮すれば、そのデータ量の膨大さには想像を絶するものがある。
【０００４】
そこで、本発明は、前記問題に鑑み、無線タグリーダで検出されたイベント情報同士の関係や状態変化を利用して、イベント情報を記憶するデータ量を削減する手段を提供することを課題とする。
【課題を解決するための手段】
【０００５】
前記課題を解決する本発明のうち、請求項１に係る発明は、固有の番号であるタグＩＤを持ち、無線タグリーダからのスキャン信号の受信に応じてタグＩＤを送信する無線タグを所定の物品に付して、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムであって、無線タグ情報処理システムが、物品の移動経路上に設置されると共に、位置管理され、固有の番号であるセンサＩＤを持ち、所定のタイミングでスキャン信号を発信し、その発信の応答として無線タグからのタグＩＤを検出し、そのときの時刻、センサＩＤおよび検出したタグＩＤからなるイベント情報をネットワーク経由でイベント処理サーバに送信する無線タグリーダと、無線タグリーダからイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバと、イベント処理サーバから指示を受けてイベント情報の追加を行うデータベースとを備え、イベント処理サーバが、無線タグリーダから同じ時刻に複数のタグＩＤを検出したことを示すイベント情報を受信したとき、その複数のタグＩＤの中から１つのタグＩＤを親タグＩＤとし、それ以外の１以上のタグＩＤを子タグＩＤとして、時刻、センサＩＤおよび親タグＩＤからなる１つのイベント情報の追加をデータベースに指示すると共に、親タグＩＤと子タグＩＤとの関係が、前回までに受信したイベント情報から変化したとき、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤからなる関係情報の追加をデータベースに指示することを特徴とする。
なお、各請求項における「無線タグリーダ」は、後記する発明を実施するための最良の形態における、タグリーダ、イベント情報送信手段などからなる「センサ」に相当する。また、請求項における「イベント処理サーバ」は、後記する発明を実施するための最良の形態における「イベント処理サーバ」および「ＤＢサーバ」を組み合わせた構成に相当する。更に、請求項における「同じ時刻に」とは、厳密に同時である瞬間をいうのではなく、「所定のタイミングにおける同じスキャン信号の発信に応じて」ということを指しており、所定の時間幅を有するものとする。
【０００６】
請求項２に係る発明は、無線タグ情報処理システムが、所定のタグＩＤのイベント情報を収集するために、そのタグＩＤを検索条件とするイベント情報の検索をネットワーク経由でイベント処理サーバに指示するクライアントを備え、イベント処理サーバが、そのタグＩＤを検索条件とするイベント情報の検索をデータベースに指示し、その検索条件に該当するイベント情報があったとき、そのイベント情報をクライアントに送信すると共に、そのタグＩＤが子タグＩＤであることを検索条件とする関係情報の検索をデータベースに指示し、その検索条件に該当する関係情報があったとき、その関係情報の親タグＩＤがタグＩＤであることを検索条件とするイベント情報の検索をデータベースに指示し、その検索条件に該当するイベント情報をクライアントに送信することを特徴とする。
【０００７】
請求項３に係る発明は、固有の番号であるタグＩＤを持ち、無線タグリーダからのスキャン信号の受信に応じてタグＩＤを送信する無線タグを所定の物品に付して、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムであって、無線タグ情報処理システムは、物品の移動経路上に設置されると共に、位置管理され、固有の番号であるセンサＩＤを持ち、所定のタイミングでスキャン信号を発信し、その発信の応答として無線タグからのタグＩＤを検出し、そのときの時刻、センサＩＤおよび検出したタグＩＤのデータからなるイベント情報をネットワーク経由でイベント処理サーバに送信する無線タグリーダと、無線タグリーダからイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバと、イベント処理サーバから指示を受けてイベント情報の追加を行うデータベースとを備え、無線タグリーダが、スキャン信号の発信に対してタグＩＤを検出できなかったとき、そのときの時刻、センサＩＤおよび検出したタグＩＤがないことを示すデータからなるイベント情報をネットワーク経由でイベント処理サーバに送信し、イベント処理サーバが、無線タグリーダから受信したイベント情報におけるタグＩＤのデータが示す検出または非検出の状態が、同一の無線タグリーダから前回受信したイベント情報から変化したとき、その検出または非検出の状態を示すデータを付加したイベント情報の追加をデータベースに指示することを特徴とする。
【０００８】
請求項４に係る発明は、無線タグ情報処理システムが、所定の時刻および所定のタグＩＤのイベント情報を取得するために、その時刻およびそのタグＩＤを検索条件とするイベント情報の検索をネットワーク経由でイベント処理サーバに指示するクライアントを備え、イベント処理サーバが、その時刻またはその時刻より前で最も近い時刻、そのタグＩＤおよび検出の状態を検索条件とするイベント情報の検索をデータベースに指示し、その検索条件に該当するイベント情報があったとき、そのイベント情報をクライアントに送信することを特徴とする。
【０００９】
請求項５に係る発明は、無線タグを物品に付し、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムにおいて、位置管理され、固有の番号であるセンサＩＤを持つ無線タグリーダから、無線タグに固有の番号であるタグＩＤを含むイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバが行う無線タグ情報処理方法であって、無線タグリーダから同じ時刻に複数のタグＩＤを検出したことを示すイベント情報を受信するステップと、複数のタグＩＤの中から１つのタグＩＤを親タグＩＤとし、それ以外の１以上のタグＩＤを子タグＩＤとして設定するステップと、時刻、センサＩＤおよび親タグＩＤからなる１つのイベント情報の追加をデータベースに指示するステップと、親タグＩＤと子タグＩＤとの関係が、前回までに受信したイベント情報から変化したとき、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤからなる関係情報の追加をデータベースに指示するステップとを含むことを特徴とする。
なお、請求項における「同じ時刻に」とは、厳密に同時である瞬間をいうのではなく、所定の時間幅を有するものとする。
【００１０】
請求項６に係る発明は、無線タグ情報処理方法であって、クライアントからタグＩＤを検索条件としてイベント情報を検索する指示を受信するステップと、タグＩＤを検索条件とするイベント情報の検索をデータベースに指示するステップと、その検索条件に該当するイベント情報があったとき、そのイベント情報をクライアントに送信するステップと、タグＩＤが子タグＩＤであることを検索条件とする関係情報の検索をデータベースに指示するステップと、その検索条件に該当する関係情報があったとき、その関係情報の親タグＩＤがタグＩＤであることを検索条件とするイベント情報の検索をデータベースに指示するステップと、その検索条件に該当するイベント情報をクライアントに送信するステップとを更に含むことを特徴とする。
【００１１】
請求項７に係る発明は、無線タグを物品に付し、その無線タグの位置に関する情報を記憶、参照する無線タグ情報処理システムにおいて、位置管理され、固有の番号であるセンサＩＤを持つ無線タグリーダから、無線タグに固有の番号であるタグＩＤを含むイベント情報を受信し、その受信したイベント情報の追加をデータベースに指示するイベント処理サーバが行う無線タグ情報処理方法であって、無線タグリーダから、タグＩＤの検出状況に応じて、そのときの時刻、センサＩＤおよび検出したタグＩＤのデータからなるイベント情報またはそのときの時刻、センサＩＤおよび検出したタグＩＤがないことを示すデータからなるイベント情報を受信するステップと、イベント情報におけるタグＩＤのデータが示す検出または非検出の状態が、同一の無線タグリーダから前回受信したイベント情報から変化したとき、その検出または非検出の状態を示すデータを付加したイベント情報の追加をデータベースに指示するステップとを含むことを特徴とする。
【００１２】
請求項８に係る発明は、無線タグ情報処理方法であって、クライアントから時刻およびタグＩＤを検索条件としてイベント情報を検索する指示を受信するステップと、その時刻またはその時刻より前で最も近い時刻、そのタグＩＤおよび検出の状態を検索条件とするイベント情報の検索をデータベースに指示するステップと、その検索条件に該当するイベント情報があったとき、そのイベント情報をクライアントに送信するステップとを更に含むことを特徴とする。
【００１３】
請求項９に係る発明は、無線タグ情報処理プログラムであって、前記各無線タグ情報処理方法のいずれか一つを、コンピュータに実行させることを特徴とする。
【００１４】
請求項１０に係る発明は、無線タグリーダを含むセンサと、そのセンサによって検出されたイベント情報を格納するイベント処理サーバと、そのイベント処理サーバに格納されたイベント情報を参照するクライアントとが、ネットワークを介して接続されて構成されるイベント情報処理システムにおけるイベント処理サーバであって、センサからイベント情報を受信する手段と、前回受信したイベント情報を保持する手段と、前回受信したイベント情報と新たに受信したイベント情報との差異を検出する手段と、その差異が検出されたとき、新たに受信したイベント情報を格納する手段と、センサによって生成されたイベント情報に複数の物品が関わっていたとき、そのイベント情報に関わる複数の物品同士の関係が変化するごとに、その関係を示す関係情報を格納する手段と、そのイベント情報に関わる複数の物品のうち代表である１つの物品に関するイベント情報を格納する手段と、クライアントから参照されたとき、物品同士の関係を示す関係情報と、代表である１つの物品に関するイベント情報とから、代表以外の物品に関するイベント情報を参照することを可能とする手段とを備え、重複した内容を持つイベント情報および関係情報のデータを格納しないように動作することを特徴とする。
【発明の効果】
【００１５】
請求項１および請求項５に係る発明によれば、同じ時刻に同じ無線タグリーダで検出した複数のタグＩＤに係るイベント情報については、そのうちの１つのイベント情報をデータベースに記憶し、その他については新たな関係情報だけをデータベースに記憶するので、イベント情報を記憶するときのデータ量を削減することができる。
【００１６】
請求項２および請求項６に係る発明によれば、イベント情報を記憶するときのデータ量を削減した状態であっても、イベント情報の検索を正しく行うことができる。
【００１７】
請求項３および請求項７に係る発明によれば、同じ無線タグリーダにおけるタグＩＤの検出または非検出の状態が変化しなければ、そのタグＩＤに係るイベント情報の記憶を行わないので、イベント情報を記憶するときのデータ量を削減することができる。
【００１８】
請求項４および請求項８に係る発明によれば、イベント情報を記憶するときのデータ量を削減した状態であっても、イベント情報の検索を正しく行うことができる。
【００１９】
請求項９に係る発明によれば、コンピュータを無線タグ情報処理システムにおけるイベント処理サーバとして機能させることができる。
【００２０】
請求項１０に係る発明によれば、イベント情報を記憶するときのデータ量を削減することができ、その状態であっても、イベント情報の検索を正しく行うことができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明を実施するための最良の形態（以下、「本発明の実施の形態」という）について図面を参照して詳細に説明する。
【００２２】
≪無線タグ情報処理システムの構成と概要≫
まず、図１を参照して、本発明の実施の形態に係る無線タグ情報処理システムの構成と概要について説明する。図１に示すように、無線タグ情報処理システムは、タグ１、タグ２、タグ３、センサ４、イベント処理サーバ５、ＤＢ（Data Base）サーバ６、ＤＢ７、クライアント８およびネットワーク９から構成される。タグ１、タグ２およびタグ３と、センサ４とは、無線通信によって情報の送受信を行う。センサ４、イベント処理サーバ５、ＤＢサーバ６およびクライアント８は、ネットワーク９を介して接続されている。ＤＢサーバ６と、ＤＢ７とは、所定のインタフェースを介して接続される。
タグ１、タグ２およびタグ３（以下、総称するとき、単に「タグ」という）は、一般に、ＲＦＩＤ（Radio Frequency Identification）タグまたはＩＣ（Integrated Circuit）タグと呼ばれるものであり、物品（商品など）に貼付され、その貼付された物品の識別に利用される無線ＩＣチップである。タグには、タグ自身の識別コードであるタグＩＤなどの情報が記録されており、無線通信を使ってセンサ４と情報を送受信する機能を持つ。図１では、タグ１のタグＩＤはＡ、タグ２のタグＩＤはＢ、タグ３のタグＩＤはＣとなっている。タグは、センサ４からスキャン信号を受信すると、自身のタグＩＤを送信する。なお、図１では、タグが３個だけ示されているが、実際には、無線タグ情報処理システムによって管理する物品ごとに貼り付けられるので、その物品の数に相当する個数のタグが存在することになる。なお、タグは、物品に貼り付けられるほか、内装されたり、括り付けられたり、はめ込まれたりする。以下、「貼り付け」で説明する。
【００２３】
センサ４は、タグリーダ４１がタグから受信した情報のほか、別に備える温度センサや湿度センサ（図示せず）が検出した温度や湿度の情報などをネットワーク９経由でイベント処理サーバ５に送信する機能を持ち、いろいろな地点に設置されるものである。本発明の実施の形態では、イベント処理サーバ５に送信する情報として、イベント情報を取り扱う。イベント情報とは、例えば、「時刻Ｘに、センサＩＤ＝Ｙのセンサの近くに、タグＩＤ＝Ｚのタグがあった」ということを示す情報である。これによれば、同じタグＩＤのイベント情報を収集し、時系列に並べることによって、センサＩＤに基づくそのタグの移動経路を知ることができる。センサ４は、タグリーダ４１、イベント情報送信手段４２などから構成される。タグリーダ４１は、文字通り、タグの情報を読むものである。具体的には、所定の時間ごとにスキャン信号を送信し、そのスキャン信号を受信したタグから送信されるタグＩＤを受信する。そして、その受信したタグＩＤをイベント情報送信手段４２に送信する。イベント情報送信手段４２は、文字通り、イベント情報を送信するものである。具体的には、タグリーダ４１から受信したタグＩＤに、そのときの時刻およびセンサに固有の番号であるセンサＩＤを付加したイベント情報をネットワーク９経由でイベント処理サーバ５に送信する。ここで、時刻は、所定の時計機能から取得し、センサＩＤは、所定の記憶手段から取得するものとする。なお、図１では、センサ４が１個だけ示されているが、実際には、イベント情報を取得すべき各地点に設置されるので、その地点の数に相当する個数のセンサが存在することになる。また、センサＩＤは、予めセンサ４の位置情報と対応付けられてＤＢ７のセンサ情報テーブル（図示せず）に記憶されているので、イベント情報でセンサＩＤと組み合わされたタグＩＤを持つタグの位置を把握することができる。
【００２４】
イベント処理サーバ５は、センサ４からネットワーク９を介してイベント情報を受信し、その受信したイベント情報を更にネットワーク９を介してＤＢサーバ６に送信する。このとき、受信したイベント情報の内容やＤＢ７の状態に応じた手順に従って、関係情報や編集し直したイベント情報をＤＢサーバ６に送信する。
ＤＢサーバ６は、ネットワーク９を介して、イベント情報サーバ５から関係情報やイベント情報を受信し、その受信した情報をＤＢ７に送信する。また、ＤＢサーバ６は、ネットワーク９を介して、クライアント８から問合せのメッセージを受信し、その受信したメッセージの内容に応じて、ＤＢ７に記憶されているイベント情報をクライアント８に送信する。以上によれば、ＤＢサーバ６は、ネットワーク９とＤＢ７とを接続するインタフェースの役割を果たす。
ＤＢ７は、所定のインタフェースを介して、ＤＢサーバ６から関係情報やイベント情報を受信し、その受信した情報を記憶する。また、ＤＢ７は、ＤＢサーバ６から参照要求のメッセージを受信し、その受信したメッセージの内容に応じて、記憶している関係情報やイベント情報を送信する。図１に示すように、ＤＢ７には、関係情報テーブル７１、イベント情報テーブル７２および前回情報テーブル７３が記憶されている。その詳細は後記する。
クライアント８は、ＤＢ７に収集されたイベント情報などを利用するものであり、例えば、所定のタグＩＤを持つタグの移動経路を表示するようなアプリケーションプログラムが動作する。クライアント８は、動作するアプリケーションプログラムが必要とするイベント情報を取得するために、ネットワーク９を介して、ＤＢサーバ６に問合せのメッセージを送信し、そのメッセージを受信したＤＢサーバ６から、そのメッセージの内容に応じたイベント情報を受信する。
【００２５】
なお、イベント処理サーバ５、ＤＢサーバ６およびクライアント８は、ＰＣ（Personal Computer）やサーバで実現されるものであり、ＣＰＵやメモリなどによる制御手段やＬＡＮ（Local Area Network）ボードなどによるネットワーク接続手段（データ送受信手段）を備えているものとする。また、ＤＢ７は、一般的なデータベース機能（データ追加、削除、更新、参照検索）を実現するソフトウエアおよびデータ構造を持つＤＢシステムであり、ハードディスク装置などの不揮発性記憶装置を搭載したＰＣやサーバによって実現され、ＤＢサーバ６とは、例えば、イーサネット（Ethernet、登録商標）などによって接続される。なお、ＤＢ７は、ＤＢサーバ６の一部として構成されることもあり、そのときは、ＤＢサーバ６におけるプロセスとして動作することになる。
ネットワーク９は、センサ４、イベント処理サーバ５、ＤＢサーバ６およびクライアント８を相互に接続するものであり、各種ネットワークによって実現される。ネットワーク９の規模は、無線タグ情報処理システムがタグの移動経路を把握すべき空間的範囲に依存する。例えば、その範囲が所定のビル内であれば、ネットワーク９は構内ＬＡＮで実現することができる。更に、その範囲が広ければ、ネットワーク９はＷＡＮ（Wide Area Network）で実現することができる。また、その範囲が全世界であれば、ネットワーク９はインターネットなどで実現することになる。
【００２６】
≪ＤＢのテーブルの構成と概要≫
次に、図２を参照して、本発明の実施の形態に係るＤＢに記憶されるテーブルの構成と概要について説明する。既に図１で説明したように、ＤＢ７には、関係情報テーブル７１、イベント情報テーブル７２および前回情報テーブル７３が記憶されている。
関係情報テーブル７１は、空間的データ削減のためのテーブルであり、親子関係にあるタグＩＤの組合せを示す関係情報を格納するテーブルである。ここで、親子関係とは、同じ時刻に同じセンサ４のスキャン信号に応答した複数タグのうち、いずれか一つのタグを親（代表）とし、それ以外のタグを子としたとき、その親のタグとそれぞれの子のタグとの一対一の対応関係をいう。図２（ａ）に示すように、関係情報テーブル７１に格納される各関係情報は、時刻、センサＩＤ、親タグＩＤおよび子タグＩＤから構成される。例えば、同じ時刻に同じセンサ４が、Ｎ個のタグＩＤを受信したとする。そのとき、関係情報テーブル７１には、その時刻、そのセンサ４のセンサＩＤ、複数のタグＩＤから１つだけ選択された親タグＩＤおよびその親タグＩＤ以外の子タグＩＤの組合せが（Ｎ−１）個格納される。ただし、親タグＩＤと子タグＩＤとの関係が同じ関係情報が既に関係情報テーブル７１にあれば、格納されることはない。すなわち、（Ｎ−１）個の関係情報のうち、変化があった新たな関係を示す関係情報が格納されることになる。これに対して、イベント情報テーブル７２には、その親タグＩＤをタグＩＤとするイベント情報１個が格納される。具体例については後記する。このように、関係情報テーブル７１に新たな関係情報を格納し、イベント情報テーブル７２に格納されるイベント情報を減らすことによって、イベント発生に伴って記憶されるデータ量を削減することができる。すなわち、これが「空間的データ削減」である。なお、親タグＩＤを複数設けるようにしてもよい。
【００２７】
イベント情報テーブル７２は、イベント情報を格納するテーブルである。図２（ｂ）に示すように、イベント情報テーブル７２に格納される各イベント情報は、時刻、センサＩＤ、タグＩＤおよび状態から構成される。時刻、センサＩＤおよびタグＩＤについては説明済である。状態には、タグＩＤの「検出」または「非検出」がある。「検出」は、タグリーダ４１がスキャン信号の送信に対応してそのタグＩＤを受信したことを示す。「非検出」は、タグリーダ４１がスキャン信号の送信に対してそのタグＩＤを受信できなかったことを示す。「非検出」だったとき、イベント情報テーブル７２に、それ以前の時刻Ｔｎ、同じセンサＩＤ、同じタグＩＤおよび「検出」状態のイベント情報があれば、時刻Ｔｎから「非検出」の時刻より１回前のスキャン信号送信時までの間、そのタグＩＤのタグがそのセンサＩＤのセンサの近くに存在していたことになる。具体例については後記する。
【００２８】
前回情報テーブル７３は、時間的データ削減のためのテーブルであり、前回までにイベント情報テーブル７２に記憶したイベント情報を、センサＩＤおよびタグＩＤの組合せごとに０個または１個格納するテーブルである。図２（ｃ）に示すように、前回情報テーブル７３に格納されるイベント情報は、時刻、センサＩＤ、タグＩＤおよび状態から構成され、イベント情報テーブル７２に格納されるイベント情報と同じである。新たなイベント情報と、前回情報テーブル７３に記憶されているイベント情報とを比較して、同じセンサＩＤ、同じタグＩＤ、同じ状態であれば（すなわち、時刻だけが異なれば）、新たなイベント情報をイベント情報テーブル７２に格納しないようにする。具体例については後記する。このように、継続して同じタグが同じセンサの近くに存在しているとき、初回より後のイベント情報の格納を抑止することによって、イベント情報テーブル７２に格納されるイベント情報を削減することができる。すなわち、これが「時間的データ削減」である。
【００２９】
≪無線タグ情報処理システムの動作≫
続いて、図３ないし図９を参照して、本発明の実施の形態に係る無線タグ情報処理システムの動作について説明する。なお、図３ないし図９は、無線タグ情報処理システムにおける各構成要素間のデータフロー図になっており、データの流れを中心にして説明するものとする。
【００３０】
＜空間的データ削減の動作＞
まず、図３および図４は、空間的データ削減の動作例を示している。図３に示すように、センサ４は、センサ４自身の交信範囲内にタグがあるか否かを確認するために、所定の時間ごとにスキャン信号を送信する（Ｓ３０１）。センサ４の近くにあるタグ１、タグ２およびタグ３は、それぞれセンサ４からスキャン信号を受信し、その受信応答として各タグＩＤ（＝Ａ、Ｂ、Ｃ）をセンサ４に送信する（Ｓ３０２）。センサ４は、タグ１、タグ２およびタグ３からタグＩＤを受信し、それらの「タグＩＤ＝Ａ＆Ｂ＆Ｃ」に「時刻＝Ｔ１」および「センサＩＤ＝Ｓ１」を付加したイベント情報をイベント処理サーバ５に送信する（Ｓ３０３）。なお、センサ４は、タグＩＤの複数同時読取に対応したタグリーダ４１を備えているものとする。イベント処理サーバ５は、センサ４からイベント情報を受信し、受信したイベント情報のうち、複数のタグＩＤの中から親（代表）になるタグＩＤを１つ選択する。その選択基準としては、例えば、Ａが箱であることを示し、ＢおよびＣがその箱の中の物であることを示す場合には、Ａを選択する。ただし、同じ時刻Ｔ１に同じセンサ４で受信したタグＩＤであるから、基本的にはどのタグＩＤを選択しても問題はない。イベント処理サーバ５は、Ａを親タグＩＤとして選択したことから、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、親タグＩＤ＝Ａ、子タグＩＤ＝Ｂ＆Ｃ」からなる関係情報を追加するメッセージを、ＤＢサーバ６に送信する（Ｓ３０４）。具体的には、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、親タグＩＤ＝Ａ、子タグＩＤ＝Ｂ」および「時刻＝Ｔ１、センサＩＤ＝Ｓ１、親タグＩＤ＝Ａ、子タグＩＤ＝Ｃ」の２つの関係情報を追加するメッセージを送信することになる。この場合、イベント処理サーバ５は、親タグＩＤと子タグＩＤとの同じ関係を示す関係情報が既に関係情報テーブル７１に格納されているとき、関係情報の追加の指示は行わないものとする。結果として、新たな関係を示す関係情報の追加の指示を行うことになる。同じ関係情報があるか否かの判断は、後記する時間的データ削減と同様に、前回情報テーブルなるものを設けることによって行ってもよいし、ＤＢ７に問い合わせるようにしてもよい。また、ＤＢサーバ６やＤＢ７が、その判断を行って関係情報を格納するようにしてもよい。
なお、ＥＰＣ  ｇｌｏｂａｌでは、タグＩＤのコード体系に製品種別を示すＧＴＩＮ（Global Trade Item Number）というコードを含めようとしているため、そのコードが適用された場合、そのコードを見ればそのタグが貼り付けられた物品がどのような種別なのかを判断することができる。そのようなコードがない場合、イベント処理サーバ５は、ＤＢサーバ６経由でＤＢ７に製品種別を問合せることもできる。
【００３１】
ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ３０５）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに従って関係情報を関係情報テーブル７１に記憶する（図３の関係情報テーブル７１参照）。更に、イベント処理サーバ５は、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ」からなるイベント情報を追加するメッセージをＤＢサーバ６に送信する（Ｓ３０６）。このとき、タグＩＤには、先に選択した親タグＩＤであるＡを設定する。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ３０７）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに従ってイベント情報をイベント情報テーブル７２に記憶する（図３のイベント情報テーブル７２参照）。以上が、イベントの発生からイベント情報の記憶までの動作の流れである。これによれば、センサ４が同じ時刻に複数のタグＩＤを受信したときには、ＤＢ７に格納する情報を新たな関係情報および１つのイベント情報にすることができ、ＤＢ７の使用量を節減することができる。
【００３２】
図４は、クライアント８からＤＢ７に記憶されたイベント情報を参照するときの動作の流れを示すものである。ここでは、クライアント８が、所定のタグＩＤを持つタグが、どのようなセンサ４を通過してきたかを示すイベント履歴を参照する例について説明する。まず、クライアント８は、「タグＩＤ＝Ｂ」という検索条件を付加したイベント履歴問合せのメッセージを送信する（Ｓ４０１）。ＤＢサーバ６は、クライアント８からそのメッセージを受信し、その受信したメッセージと同様に、「タグＩＤ＝Ｂ」という検索条件を付加したイベント情報参照のメッセージをＤＢ７に送信する（Ｓ４０２）。これは、タグＩＤ＝Ｂ単体のイベント情報およびタグＩＤ＝Ｂが親タグＩＤであるイベント情報を検索することを意味する。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる「タグＩＤ＝Ｂ」という検索条件によってイベント情報テーブル７２を検索する。図３に示すように、イベント情報テーブル７２には、タグＩＤ＝Ｂのイベント情報はないので、その旨である「なし」というメッセージをＤＢサーバ６に返信する（Ｓ４０３）。ＤＢサーバ６は、ＤＢ７から「なし」というメッセージを受信したことによって、イベント情報テーブル７２にはタグＩＤ＝Ｂ単体のイベント情報およびタグＩＤ＝Ｂが親タグＩＤであるイベント情報がないことを認識する。
【００３３】
次に、ＤＢサーバ６は、子タグＩＤがＢである関係情報を取得するために、「子タグＩＤ＝Ｂ」という検索条件を付加した関係情報参照のメッセージをＤＢ７に送信する（Ｓ４０４）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる「子タグＩＤ＝Ｂ」という検索条件によって関係情報テーブル７１を検索する。図３に示すように、関係情報テーブル７１には、子タグＩＤ＝Ｂの関係情報が１つあり、その時刻Ｔ１以降には新たな関係情報がないことから、その関係情報に基づいて、「時刻＝Ｔ１から現在、センサＩＤ＝Ｓ１、親タグＩＤ＝Ａ」からなる関係情報をＤＢサーバ６に送信する（Ｓ４０５）。ＤＢサーバ６は、その関係情報を受信し、受信した関係情報によって、「時刻＝Ｔ１から現在、タグＩＤ＝Ａ」という検索条件に合致するイベント情報は、タグＩＤ＝Ｂのイベント情報でもあることが分かるので、その検索条件を付加したイベント情報参照のメッセージをＤＢ７に送信する（Ｓ４０６）。ＤＢ７は、そのメッセージを受信し、図３に示すように、イベント情報テーブル７２には、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ」からなるイベント情報があるので、そのうちの「時刻＝Ｔ１、センサＩＤ＝Ｓ１」をイベント情報としてＤＢサーバ６に送信する（Ｓ４０７）。ＤＢサーバ６は、そのイベント情報を受信し、その受信したイベント情報をイベント履歴としてクライアント８に送信する（Ｓ４０８）。
【００３４】
以上が、空間的データ削減を利用したイベント情報の記憶、参照の動作例である。なお、リレーショナルＤＢを使用するイメージで説明したが、ＸＭＬ（Extensible Markup Language）−ＤＢを使用しても動作は同様である。この場合、関係情報を記述するときにＸＬｉｎｋ（XML Linking Language、ＸＭＬ文書でリンクを記述する言語）を用い、データを参照するときにＸＬｉｎｋによるエンベッド機能を用いることによって問合せを容易にすることが可能となる。
【００３５】
＜時間的データ削減の動作＞
次に、図５ないし図９は、時間的データ削減の動作例を示す。図５および図６は、センサ４が初めてタグ１を検出したときのイベント情報の記憶動作を示している。
図５に示すように、センサ４は、センサ４自身の交信範囲内にタグがあるか否かを確認するために、所定の時間ごとにスキャン信号を送信する（Ｓ５０１）。初めてセンサ４の交信範囲内に入ったタグ１は、センサ４からスキャン信号を受信し、その受信応答としタグＩＤ（＝Ａ）をセンサ４に送信する（Ｓ５０２）。センサ４は、タグ１からタグＩＤを受信し、その「タグＩＤ＝Ａ」に「時刻＝Ｔ１」および「センサＩＤ＝Ｓ１」を付加したイベント情報をイベント処理サーバ５に送信する（Ｓ５０３）。イベント処理サーバ５は、センサ４からイベント情報を受信し、受信したイベント情報のうち、「センサＩＤ＝Ｓ１、タグＩＤ＝Ａ」に「状態＝検出」を付加した検索条件によって前回情報を参照するメッセージをＤＢサーバ６に送信する（Ｓ５０４）。これは、イベント情報を送信したセンサ４が、前回スキャン信号を送信したとき、タグＩＤ＝Ａを受信したか否かを知るためである。
【００３６】
ＤＢサーバ６は、イベント処理サーバ５からメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ５０５）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる検索条件によって前回情報テーブル７３を検索する。図５に示すように、前回スキャン信号を送信したときにはタグＩＤを受信できなかったため、検索条件に合致する前回情報はないということで、「なし」のメッセージをＤＢサーバ６に返信する（Ｓ５０６）。ＤＢサーバ６は、ＤＢ７から「なし」のメッセージを受信し、その受信した「なし」のメッセージをイベント処理サーバ５に送信する（Ｓ５０７）。イベント処理サーバ５は、ＤＢサーバ７から「なし」のメッセージを受信することによって、「センサＩＤ＝Ｓ１」に該当する前回情報がないことが分かるので、前回情報を削除するメッセージは送信しない。
【００３７】
続いて、図６に示すように、イベント処理サーバ５は、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ、状態＝検出」からなる前回情報を追加するメッセージをＤＢサーバ６に送信する（Ｓ６０１）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ６０２）。ＤＢ７は、ＤＢサーバ６からメッセージを受信し、その受信したメッセージに含まれる前回情報を前回情報テーブル７３に追加する（図６の前回情報テーブル７３参照）。更に、イベント処理サーバ５は、Ｓ５０７（図５参照）のメッセージによって、該当する前回情報がなく、そのことから前回は同じセンサＩＤ、同じタグＩＤ、同じ状態であるイベント情報がイベント情報テーブル７２に追加されなかったことが分かるので、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ、状態＝検出」からなるイベント情報を追加するメッセージをＤＢサーバ６に送信する（Ｓ６０３）。この「状態＝検出」という情報は、「前回スキャン信号を送信したときには、タグＩＤを受信しなかったが、時刻Ｔ１にはタグＩＤ＝Ａを受信した」ことを示す。換言すれば、時刻Ｔ１に、初めてタグＩＤ＝Ａを検出したことを示す。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ６０４）。ＤＢ７は、ＤＢサーバ６からメッセージを受信し、その受信したメッセージに含まれるイベント情報をイベント情報テーブル７２に追加する（図６のイベント情報テーブル７２参照）。以上が、初めてセンサ４がタグ１のタグＩＤ（＝Ａ）を受信したときの動作の流れである。
【００３８】
図７は、前回スキャン信号を送信したときと同様に、センサ４がタグ１を検出したときのイベント情報の記憶動作を示している。図７に示すように、センサ４は、時刻Ｔ２に再びスキャン信号を送信する（Ｓ７０１）。継続してセンサ４の交信範囲内に存在するタグ１は、センサ４からスキャン信号を受信し、その受信応答としてタグＩＤ（＝Ａ）をセンサ４に送信する（Ｓ７０２）。センサ４は、タグ１からタグＩＤを受信し、その「タグＩＤ＝Ａ」に「時刻＝Ｔ２」および「センサＩＤ＝Ｓ１」を付加したイベント情報をイベント処理サーバ５に送信する（Ｓ７０３）。イベント処理サーバ５は、センサ４からイベント情報を受信し、受信したイベント情報のうち、「センサＩＤ＝Ｓ１」および「タグＩＤ＝Ａ」に「状態＝検出」を付加した検索条件によって前回情報を参照するメッセージをＤＢサーバ６に送信する（Ｓ７０４）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ７０５）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる検索条件によって前回情報テーブル７３を検索する。図６に示すように、タグＩＤ＝Ａは前回スキャン信号を送信したときにも検出されているため、検索条件に合致する前回情報があるということで、「あり」のメッセージをＤＢサーバ６に返信する（Ｓ７０６）。ＤＢサーバ６は、ＤＢ７から「あり」のメッセージを受信し、その受信した「あり」のメッセージをイベント処理サーバ５に送信する（Ｓ７０７）。
【００３９】
イベント処理サーバ５は、「センサＩＤ＝Ｓ１」に該当する前回情報を削除するメッセージをＤＢサーバ６に送信する（Ｓ７０８）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ７０９）。ＤＢ７は、「センサＩＤ＝Ｓ１」に該当する前回情報を削除するメッセージを受信し、該当する前回情報を削除する。次に、イベント処理サーバ５は、「時刻＝Ｔ１、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ、状態＝検出」からなる前回情報を追加するメッセージをＤＢサーバ６に送信する（Ｓ７１０）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ７１１）。ＤＢ７は、ＤＢサーバ６からメッセージを受信し、その受信したメッセージに含まれる前回情報を前回情報テーブル７３に追加する（図７の前回情報テーブル７３参照）。なお、初回検出時とは異なり、イベント処理サーバ５は、Ｓ７０７のメッセージによって該当する前回情報があり、そのことから、前回またはそれより前にスキャン信号を送信したとき、同じセンサＩＤ、同じタグＩＤ、同じ状態であるイベント情報がイベント情報テーブル７２に追加されたことが分かるので、イベント情報を追加するメッセージは送信しない。このように時間だけが異なり、その他が同じであるイベント情報を２個以上追加しないことが、「時間的データ削減」である。
【００４０】
図８は、前回スキャン信号を送信したときと変わって、センサ４がタグ１を検出できなかったときのイベント情報の記憶動作を示している。図８に示すように、センサ４は、時刻Ｔ３に再びスキャン信号を送信する（Ｓ８０１）。ところが、センサ４の交信範囲内にタグが存在しないため、タグＩＤを受信できなかったとき、センサ４は、「時刻＝Ｔ３、センサＩＤ＝Ｓ１、タグＩＤ＝なし」からなるイベント情報をイベント処理サーバ５に送信する（Ｓ８０２）。イベント処理サーバ５は、センサ４からイベント情報を受信し、受信したイベント情報のうち、「センサＩＤ＝Ｓ１」に「状態＝検出」を付加した検索条件によって前回情報を参照するメッセージをＤＢサーバ６に送信する（Ｓ８０３）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ８０４）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる検索条件によって前回情報テーブル７３を検索する。図７に示すように、このとき、検索条件に合致する前回情報があるので、「あり（タグＩＤ＝Ａ、状態＝検出）」のメッセージをＤＢサーバ６に返信する（Ｓ８０５）。ＤＢサーバ６は、ＤＢ７から「あり」のメッセージを受信し、その受信した「あり」のメッセージをイベント処理サーバ５に送信する（Ｓ８０６）。
【００４１】
イベント処理サーバ５は、「センサＩＤ＝Ｓ１」に該当する前回情報を削除するメッセージをＤＢサーバ６に送信する（Ｓ８０７）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ８０８）。ＤＢ７は、「センサＩＤ＝Ｓ１」に該当する前回情報を削除するメッセージを受信し、該当する前回情報を削除する。そして、イベント処理サーバ５は、タグＩＤ＝Ａを受信できなくなったことを示すイベント情報、すなわち、「時刻＝Ｔ３、センサＩＤ＝Ｓ１、タグＩＤ＝Ａ、状態＝非検出」からなるイベント情報を追加するメッセージをＤＢサーバ６に送信する（Ｓ８０９）。この「状態＝非検出」という情報は、「前回スキャン信号を送信したときには、タグＩＤ＝Ａを受信したが、時刻Ｔ３にはタグＩＤ＝Ａを受信できなかった」ことを示す。換言すれば、時刻Ｔ３に、初めてタグＩＤ＝Ａを検出しなくなったことを示す。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ８１０）。ＤＢ７は、ＤＢサーバ６からメッセージを受信し、その受信したメッセージに含まれるイベント情報をイベント情報テーブル７２に追加する（図８の前回情報テーブル７２参照）。なお、今回は、タグＩＤ受信というイベント自体が発生していないので、イベント処理サーバ５は、前回情報を追加するメッセージを送信しない。
【００４２】
図９のＳ９０６までのステップは、前回スキャン信号を送信したときと同様に、センサ４がタグ１を検出できなかったときの動作を示している。図９に示すように、センサ４は、時刻Ｔ４に再びスキャン信号を送信する（Ｓ９０１）。そのスキャン信号に対するタグＩＤを受信できなかったとき、センサ４は、「時刻＝Ｔ４、センサＩＤ＝Ｓ１、タグＩＤ＝なし」からなるイベント情報をイベント処理サーバ５に送信する（Ｓ９０２）。イベント処理サーバ５は、センサ４からイベント情報を受信し、受信したイベント情報のうち、「センサＩＤ＝Ｓ１」を付加した検索条件によって前回情報を参照するメッセージをＤＢサーバ６に送信する（Ｓ９０３）。ＤＢサーバ６は、イベント処理サーバ５からそのメッセージを受信し、その受信したメッセージをＤＢ７に送信する（Ｓ９０４）。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる検索条件によって前回情報テーブル７３を検索する。図８に示したように、Ｓ８０８によって前回情報が削除されてから、新たな前回情報は追加されていないため、検索条件に合致する前回情報はないので、「なし」のメッセージをＤＢサーバ６に送信する（Ｓ９０５）。ＤＢサーバ６は、ＤＢ７から「なし」のメッセージを受信し、その受信した「なし」のメッセージをイベント処理サーバ５に送信する（Ｓ９０６）。今回は、タグＩＤ受信というイベント自体が発生していないので、イベント処理サーバ５は、前回情報を追加するメッセージを送信しない。また、タグＩＤを受信できないという「非検出」の状態は、前回のスキャン信号送信時から変わっていないので、新たなイベント情報を追加するメッセージを送信することもしない。
【００４３】
図９のＳ９０７以降のステップは、クライアント８からＤＢ７に記憶されたイベント情報を参照するときの動作の流れを示すものである。ここでは、クライアント８が、時刻Ｔ２に、所定のタグＩＤを持つタグが、どのセンサ４の近くにあったかを示すイベント情報を参照する例について説明する。まず、クライアント８は、「時刻＝Ｔ２、センサＩＤ＝？、タグＩＤ＝Ａ」という検索条件を付加したイベント情報問合せのメッセージを送信する（Ｓ９０７）。ＤＢサーバ６は、クライアント８からそのメッセージを受信し、「時刻＝Ｔ２以前の直近、センサＩＤ＝？、タグＩＤ＝Ａ、状態＝検出」という検索条件を付加したイベント情報参照のメッセージをＤＢ７に送信する（Ｓ９０８）。ここで、「時刻＝Ｔ２以前の直近」とは、イベント情報の時刻が、Ｔ２またはＴ２より前で最も近い時刻であることを示す。時刻＝Ｔ２のイベント情報を参照するのに、その時刻＝Ｔ２そのものを含むイベント情報があればよいが、例えば、図８のイベント情報テーブル７２に示すように、時刻＝Ｔ１（Ｔ２より前の時刻）のイベント情報が記憶されているとき、時刻＝Ｔ２のイベントが発生したとしても、時間的データ削減によって時刻＝Ｔ２のイベント情報は記憶されない。そこで、時刻＝Ｔ２のイベント情報がないときには、Ｔ２より前で最も近い時刻のイベント情報を検索するわけである。ＤＢ７は、ＤＢサーバ６からそのメッセージを受信し、その受信したメッセージに含まれる検索条件に従ってイベント情報テーブル７２を検索し、「センサＩＤ＝Ｓ１」というイベント情報をＤＢサーバ６に送信する（Ｓ９０９）。ＤＢサーバ６は、ＤＢ７からそのイベント情報を受信し、その受信したイベント情報をクライアント８に送信する（Ｓ９１０）。
これによって、クライアント８は、「時刻＝Ｔ２に、タグＩＤ＝Ａのタグは、センサＩＤ＝Ｓ１のセンサの近くにあった」ことを知ることができる。
【００４４】
以上説明した本発明の実施の形態に係るイベント処理サーバ５およびＤＢサーバ６はコンピュータ及びプログラムによって実現することができ、そのプログラムをコンピュータによる読み取り可能な記録媒体に記録することでその記録媒体によって提供することが可能である。また、そのプログラムをネットワークを通して提供することも可能である。
【００４５】
≪その他の実施の形態≫
以上本発明について好適な実施の形態について一例を示したが、本発明は前記実施の形態に限定されず、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、以下のような実施の形態が考えられる。
（１）前記実施の形態においては空間的データ削減と時間的データ削減とを別々に記載したが、その２つのデータ削減の方法を同時に用いるようにしてもよい。これによれば、更にイベント情報を記憶するときのデータ量を削減することができる。
（２）前記実施の形態においてはイベント処理サーバ５とＤＢサーバ６とを別物として記載したが、それらを１つのサーバで実現するように構成してもよい。これによれば、前記実施の形態におけるイベント処理サーバおよびＤＢサーバ間の情報の送受信が、１つのサーバ内のプログラムモジュール間インタフェースで行われるようになるので、イベント情報を記憶する処理時間が短縮される。
（３）前記実施の形態においては、センサ４（タグリーダ４１）が所定のタイミングとして所定の時間ごとにスキャン信号を送信するように記載したが、物品などを感知するセンサで物品を感知したときを所定のタイミングとして、スキャン信号を送信するようにしてもよい。物品などを感知するセンサで物品を感知したとき、タグＩＤを漏れなく受信できるように所定の回数または所定の時間だけスキャン信号の送信を繰り返すことになる。
【図面の簡単な説明】
【００４６】
【図１】本発明の実施の形態に係る無線タグ情報処理システムの構成を示す図である。
【図２】本発明の実施の形態に係るＤＢに格納されるテーブルの構成を示す図である。
【図３】本発明の実施の形態に係る無線タグ情報処理システムの空間的データ削減の動作を示すデータフロー図である。
【図４】本発明の実施の形態に係る無線タグ情報処理システムの空間的データ削減の動作を示すデータフロー図（図３の続き）である。
【図５】本発明の実施の形態に係る無線タグ情報処理システムの時間的データ削減の動作を示すデータフロー図である。
【図６】本発明の実施の形態に係る無線タグ情報処理システムの時間的データ削減の動作を示すデータフロー図（図５の続き）である。
【図７】本発明の実施の形態に係る無線タグ情報処理システムの時間的データ削減の動作を示すデータフロー図（図６の続き）である。
【図８】本発明の実施の形態に係る無線タグ情報処理システムの時間的データ削減の動作を示すデータフロー図（図７の続き）である。
【図９】本発明の実施の形態に係る無線タグ情報処理システムの時間的データ削減の動作を示すデータフロー図（図８の続き）である。
【符号の説明】
【００４７】
１、２、３  タグ
４      センサ
５      イベント処理サーバ
６      ＤＢサーバ
７      ＤＢ
８      クライアント
９      ネットワーク
４１    タグリーダ
４２    イベント情報送信手段
７１    関係情報テーブル
７２    イベント情報テーブル
７３    前回情報テーブル
【図１】
2005228268.tif 000003
【図２】
2005228268.tif 000004
【図３】
2005228268.tif 000005
【図４】
2005228268.tif 000006
【図５】
2005228268.tif 000007
【図６】
2005228268.tif 000008
【図７】
2005228268.tif 000009
【図８】
2005228268.tif 000010
【図９】
2005228268.tif 000011