(57)【特許請求の範囲】
【請求項１】
パーソナルデータを格納するパーソナルデータ格納部と、
前記パーソナルデータを前記パーソナルデータ格納部に問い合わせる機能を有するローカルサーバ部と、
外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、
外部との通信を制限し、前記ローカルサーバ部を介して前記パーソナルデータ格納部にアクセスする機能を有する第２のデータ処理部と、
前記第１及び第２のデータ処理部が生成した表示データを合成して表示する表示部と
を具備し、
前記第１のデータ処理部は、外部からプログラムを含む外部データを取得して前記ローカルサーバ部に保存し、
前記第２のデータ処理部は、前記ローカルサーバ部から前記外部データを取得して当該外部データに含まれるプログラムを実行する
ことを特徴とする端末装置。
【請求項２】
パーソナルデータを格納するパーソナルデータ格納部と、
外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、
外部との通信を制限し、複数の端末装置から送信されたデータを集計して外部サーバに送信する集計サーバとの通信機能と、前記パーソナルデータ格納部へのアクセス機能とを有する第２のデータ処理部と、
前記第１及び第２のデータ処理部が生成した表示データを合成して表示する表示部と
を具備し、
前記外部サーバにおいて集計されたデータを用いて表示する情報を変更することを特徴とする端末装置。
【請求項３】
前記第２のデータ処理部は、複数備えられることを特徴とする請求項１または２記載の端末装置。
【請求項４】
前記第１のデータ処理部は、ユーザからの外部データの取得要求に応じて、外部から、前記パーソナルデータを適切に扱っていると判断されたことを示す電子署名が付与された外部データを取得し、前記電子署名が付与されている旨をユーザに提示する
ことを特徴とする請求項１乃至３のいずれか１項に記載の端末装置。
【請求項５】
前記第２のデータ処理部は、前記パーソナルデータ格納部に格納されたパーソナルデータを読み出す場合に、パーソナルデータを読み込む旨をユーザに提示することを特徴とする請求項１乃至４のいずれか１項に記載の端末装置。
【請求項６】
パーソナルデータを格納するパーソナルデータ格納部と、前記パーソナルデータを前記パーソナルデータ格納部に問い合わせる機能を有するローカルサーバ部と、外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、外部との通信を制限し、前記ローカルサーバ部を介して前記パーソナルデータ格納部にアクセスする機能を有する第２のデータ処理部と、表示部とを備えた端末装置で使用されるデータ処理方法であって、
前記第１のデータ処理部が、プログラムを含む外部データの取得要求を外部に送信し、
前記第１のデータ処理部が、前記取得要求の送信に対し前記外部から送信された前記外部データを受信して前記ローカルサーバ部に保存するとともに、表示データを生成し、
前記第２のデータ処理部が、前記ローカルサーバ部から前記外部データを取得して当該外部データに含まれるプログラムを実行するとともに、前記パーソナルデータ格納部にアクセスして前記パーソナルデータ格納部からパーソナルデータを取得し、前記パーソナルデータからパーソナルな表示データを生成し、
前記表示部が、前記第１及び第２のデータ処理部が生成した表示データを合成して表示することを特徴とするデータ処理方法。
【請求項７】
パーソナルデータを格納するパーソナルデータ格納部と、外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、外部との通信を制限し、複数の端末装置から送信されたデータを集計して外部サーバに送信する集計サーバとの通信機能と、前記パーソナルデータ格納部へのアクセス機能とを有する第２のデータ処理部と、表示部とを備えた端末装置で使用されるデータ処理方法であって、
前記第１のデータ処理部が、外部データの取得要求を外部に送信し、
前記第１のデータ処理部が、前記取得要求の送信に対し前記外部から送信された前記外部データを受信して表示データを生成し、
前記第２のデータ処理部が、前記パーソナルデータ格納部にアクセスして前記パーソナルデータ格納部からパーソナルデータを取得し、前記パーソナルデータからパーソナルな表示データを生成し、
前記表示部が、前記第１及び第２のデータ処理部が生成した表示データを合成して表示し、
前記外部サーバにおいて集計されたデータを用いて表示する情報を変更することを特徴とするデータ処理方法。
【請求項８】
端末装置により実行されるプログラムであって、前記端末装置を
パーソナルデータを格納するパーソナルデータ格納部と、
前記パーソナルデータを前記パーソナルデータ格納部に問い合わせる機能を有するローカルサーバ部と、
外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、
外部との通信を制限し、前記ローカルサーバ部を介して前記パーソナルデータ格納部にアクセスする機能を有する第２のデータ処理部と、
前記第１及び第２のデータ処理部が生成した表示データを合成して表示する表示部として動作させ、
前記第１のデータ処理部に、外部からプログラムを含む外部データを取得して前記ローカルサーバ部に保存させ、
前記第２のデータ処理部に、前記ローカルサーバ部から前記外部データを取得して当該外部データに含まれるプログラムを実行させる
ことを特徴とするプログラム。
【請求項９】
端末装置により実行されるプログラムであって、前記端末装置を
パーソナルデータを格納するパーソナルデータ格納部と、
外部との通信機能を有し、前記パーソナルデータ格納部へのアクセスを制限する第１のデータ処理部と、
外部との通信を制限し、複数の端末装置から送信されたデータを集計して外部サーバに送信する集計サーバとの通信機能と、前記パーソナルデータ格納部へのアクセス機能とを有する第２のデータ処理部と、
前記第１及び第２のデータ処理部が生成した表示データを合成して表示する表示部として動作させ、
前記外部サーバにおいて集計されたデータを用いて表示する情報を変更することを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルデータにアクセスして個人に最適化された情報を個人端末に表示する端末装置、データ処理方法及びプログラムに関する。
【背景技術】
【０００２】
スマートフォンに代表される個人が所持する情報機器の普及に伴い、モバイル端末上でさまざまなオンラインサービスから提供される情報を表示することが一般的になっている。これらの情報表示サービスにおいては、ユーザにかかわる情報を利用して、ユーザにパーソナライズされた情報を表示することで、ユーザの利便性を高めているケースがある。たとえばユーザの現在地の情報をもとに周辺の地図データをサーバからダウンロードしてモバイル端末上に表示することによって、ユーザはわざわざ現在地を情報表示サービスに入力しなくても、現在地周辺の地図や関連情報を即座に閲覧することができる。
【０００３】
このように、ユーザに最適化（パーソナライズ）されたサービスを提供するためには、ユーザ自身の情報（パーソナルデータ）を元に、その他の関連するデータを結びつけてユーザに提示する処理が必要である。なおパーソナルデータは、ユーザのある時点でのコンテキスト（現在地など）をあらわすコンテキストデータと、それ以外のデータに分けることができる。コンテキストデータは時間とともに変化する情報であり、それ以外のデータには、たとえば氏名・住所・性別などの個人情報やプロファイル情報、移動履歴や購買履歴などの履歴情報が含まれる。以降では、単にパーソナルデータと表記した場合は、後者の、コンテキストデータ以外の情報を指すものとする。
【０００４】
個人に最適化された情報を表示する方法としては、現在主に二種類の方法が使われている。
一つは、端末上にインストールされたアプリケーションの形態としてユーザに情報を表示するものである。モバイル端末上の地図アプリケーションが、端末のGPS（位置）データを用いて現在地周辺の地図を表示するケースがこれに該当する。このアプリケーションの形態では、端末上に保存された任意のデータにアクセスできるため、個人情報を用いた表示情報の最適化（パーソナライズ）が自由に行える。一方、この形態ではアプリケーションが取得した任意のデータを外部のサーバに送信可能であるため、悪意のあるアプリケーションがパーソナルデータを悪用する危険性を抱えている。最近では、モバイル端末に保存されている個人情報やパーソナルデータを、モバイル端末にインストールされたアプリケーションが抜き取り、ユーザに無断で外部（アプリ開発会社が運営するサーバ等）に送信しているケースがあり、社会問題となっている。このような不正なアプリケーションが個人情報を勝手に収集し濫用することを、技術的に抑止するのは困難である。
【０００５】
他の一つは、Webブラウザを用いてユーザに最適化された情報を表示する形態である。この形態では、Webサーバからダウンロードされたコンテンツ（HTMLファイルやJava（登録商標）Script（登録商標）プログラム）が、ブラウザに用意された機能 (API) を用いて現在地情報を取得し、サーバにその情報を送ることによって現在地周辺の地図データをダウンロードし、周辺地図を表示する（非特許文献１）。この形態では、ブラウザが用意したAPIの範囲でしか、ユーザ端末からパーソナルデータを自動的に取得することはできない。HTML規格ではユーザのプライバシー保護の観点から、ブラウザはユーザ端末内のデータには通常アクセスできず、ユーザの明示的な許可がある場合に限りいくつかのコンテキストデータへのアクセスを許容している。現在においては、ブラウザがユーザ端末から自動的に取得できるデータは位置情報程度である。このため、位置情報以外のパーソナルデータを用いて表示情報をパーソナライズするためには、パーソナルデータを何らかの形でWebサーバに蓄積しておく必要がある。しかし、位置情報履歴や購買履歴情報などのプライバシーにかかわる情報をサーバにすべて蓄積しておくのは、ユーザのプライバシー保護や情報セキュリティ確保にかかるコストが大きいため現実的ではない。
【先行技術文献】
【非特許文献】
【０００６】
【非特許文献１】W3C Geolocation API Specification, http://www.w3.org/TR/geolocation-API/
【非特許文献２】Content Security Policy,  http://www.w3.org/TR/CSP/
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記の従来技術ではユーザのパーソナルデータを活用した高度なパーソナル情報表示サービスを提供したい場合、ユーザ端末上で動作するプログラムが端末内のパーソナルデータにアクセスできる場合においては、そのデータを外部に自由に送信され悪用されてしまうリスクがある。
【０００８】
また、プログラムが端末内のパーソナルデータにアクセスできない場合においては、パーソナルデータをあらかじめサーバ上に保存しておく必要があり、個人情報管理上の高いコストが発生していた。
【０００９】
本発明の目的は、パーソナルデータを保護しつつ、パーソナルデータと外部からのコンテキストデータの双方を活用した高度なパーソナルサービスの提供を可能とする端末装置、データ処理方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するため、本発明ではプログラム実行のための二つのデータ処理部を設ける。
まず、端末内において外部（サーバなど）にデータを送受信できない領域（サンドボックス）を生成し（これをプライベートデータ処理部と呼ぶ）、プライベートデータ処理部内においてパーソナルデータを用いたデータ処理および表示データ生成を行う。プライベートデータ処理部内で実行されるプログラムは、端末内のパーソナルデータにアクセスできるが、外部にデータを送受信することはできない。
【００１１】
次に、プライベートデータ処理部とは別に、自由に外部にアクセスできるパブリックデータ処理部を設けて、データ処理、外部とのデータ送受信および表示データの生成を行う。パブリックデータ処理部内で実行されるプログラムは、ブラウザと同様コンテキストデータ（現在位置情報等）にはアクセスできるが、パーソナルデータにはアクセスできない。
【００１２】
最後に、表示部が、プライベートデータ処理部およびパブリックデータ処理部がそれぞれ作成した表示データを合成して最終的にユーザに提示する。
なお、本発明ではパブリックデータ処理部やプライベートデータ処理部はそれぞれ複数個存在していても良い。また、プライベートデータ処理部の外部アクセスに例外を設けて、特定の外部サーバにのみデータを送受信できるようにしても良い。この場合、プライベートデータ処理部は、信頼された特定のサーバにのみパーソナルデータを送信することが可能になる。なお、上記各発明は、可能な限り組み合わせることができる。
【発明の効果】
【００１３】
本発明では、外部にデータを送受信できないプライベートデータ処理部内のプログラムのみがパーソナルデータを扱うため、パーソナルデータを外部サーバに送信して濫用される可能性を技術的に防いでいる。
また、一方でプライベートデータ処理部内のプログラムが自由にパーソナルデータにアクセスして個人に最適化した情報表示画面を作成することで、外部サーバにパーソナルデータを保管しない場合でもパーソナライズサービスの実現を可能としている。
【００１４】
なお、プライベートデータ処理部しか存在しない場合は、コンテキストデータに基づく外部データの取得リクエストをサーバに送信することができない。例えば自分の現在位置をもとに周辺の地図データをダウンロードして表示することができない。本発明では、パブリックデータ処理部において地図の表示データを作り、プライベートデータ処理部においてパーソナルな表示データを作り、表示部においてそれらを合成することによって、パーソナルデータを保護しつつも、パーソナルデータとコンテキストデータの双方を活用した高度なパーソナルサービスの提供を可能とする。
【図面の簡単な説明】
【００１５】
【図１】本発明に関係する情報表示システムを示すブロック図。
【図２】本発明に係る情報表示システムを示すブロック図。
【図３】本発明の第１の実施形態に係るユーザ端末とサーバとの接続構成例を示すブロック図。
【図４】第１の実施形態におけるサーバとユーザ端末の各部との間のデータの送受信動作を示すシーケンス図。
【図５】第１の実施形態におけるクエリのデータ構造図。
【図６】第１の実施形態におけるクエリにＨＴＴＰヘッダを付与したデータ構造図。
【図７】第１の実施形態においてパブリックデータ処理部が作成した表示データの一例を示す図。
【図８】第１の実施形態においてパブリックデータ処理部及びプライベートデータ処理部が作成した合成表示データの一例を示す図。
【図９】本発明の第２の実施形態に係るユーザ端末とサーバと集計サーバとの接続構成例を示すブロック図。
【図１０】第２の実施形態におけるクエリにＨＴＴＰヘッダを付与したデータ構造図。
【発明を実施するための形態】
【００１６】
添付の図面を参照して本発明の実施形態を説明する。以下に説明する実施形態は本発明の実施の例であり、本発明は、以下の実施形態に制限されるものではない。なお、本明細書及び図面において符号が同じ構成要素は、相互に同一のものを示すものとする。
【００１７】
本発明に係る実施形態を説明するに先立ち、その動作原理について説明する。
以前は、図１に示すように、ｗｅｂ上のサーバＳＶからダウンロードされたコンテンツ（HTMLファイルやJava（登録商標）Script（登録商標）プログラム）が、携帯端末ＭＴ内のブラウザに用意された機能（ＡＰＩ）を用いて現在地情報を取得し、サーバＳＶにその情報を送信する。すると、サーバＳＶは、データ送信部１と、データ処理部２と、リクエスト受信部３と、パーソナルデータ記憶部４とを備えている。サーバＳＶは、リクエスト受信部３により携帯端末ＭＴから送られた情報を受信すると、データ処理部２によりパーソナルデータ記憶部４からパーソナルデータを読み出してパーソナル化した表示データを生成し、データ送信部１により表示データを携帯端末ＭＴへ送信する。
【００１８】
ところで、図１に示すシステムでは、位置情報履歴や購買履歴情報などのプライバシーに関わる情報をサーバＳＶに全て蓄積しておくため、ユーザのプライバシー保護や情報セキュリティ確保にかかるコストが大きい。
そこで、本発明は、図２に示すように、ユーザ端末１００内に、パーソナルデータ提供部１３０及びローカルサーバ１４０を設けるようにし、情報表示システム（ブラウザ）１１０内に、表示データ受信部１１１、表示部１１４及びリクエスト送信部１１５の他に、パブリックデータ処理部１１２と、プライベートデータ処理部１１３とを設けるようにしている。プライベートデータ処理部１１３は、パーソナルデータ提供部１３０に格納されたパーソナルデータを用いたデータ処理及び表示データ生成を行う。プライベートデータ処理部１１３内で実行されるプログラムは、パーソナルデータ提供部１３０にアクセスできるが、外部にデータを送受信することはできない。
【００１９】
パブリックデータ処理部１１２は、データ処理、外部とのデータ送受信及び表示データの生成を行う。パブリックデータ処理部１１２内で実行されるプログラムは、ユーザ端末１００内のコンテキストデータ提供部１２０にはアクセスできるが、パーソナルデータ提供部１３０にはアクセスできない。
【００２０】
表示部１１４は、パブリックデータ処理部１１２及びプライベートデータ処理部１１３がそれぞれ作成した表示データを合成して最終的にユーザに提示する。
上記の原理に基づき、以下に本発明の実施形態について説明する。
【００２１】
（第１の実施形態）  
本第１の実施形態では、サービス提供者Ｘが、本発明の情報表示システムを用いてユーザに対してパーソナライズされたＷｅｂサービスを提供する、というシナリオを考える。具体的には、あるユーザ端末内にパーソナルデータとして過去の購買履歴が蓄積されているものとして、サービス提供者はユーザの現在地周辺にある店舗で売っている商品の中から、ユーザの買いそうな商品をセレクトしてユーザに対して提示（ユーザ端末上に表示）するケースを考える。
【００２２】
図３は、本第１の実施形態に係るユーザ端末１００とサーバＳＶとの接続構成例を示し、以下に各機能部について説明する。サーバＳＶは、本第１の実施形態のサービスを提供する事業者Ｘの所有するWebサーバである。サーバＳＶは、リクエスト受信部３、データ処理部２、データ送信部１をそれぞれ持つ。
【００２３】
ユーザは、本サービスを受けるユーザであり、ユーザ端末１００を所持している。ユーザ端末１００はスマートフォンなどのモバイル端末であってもパソコンなどの据え置きの端末であっても良い。
ユーザ端末１００には、現在地情報などのコンテキストデータを管理し、パブリックデータ処理部１１２に対して提供するコンテキストデータ提供部１２０と、電話帳情報や位置情報履歴、購買履歴などのパーソナルデータを管理するパーソナルデータ提供部１３０と、ローカルサーバ１４０と、情報表示システム１１０がある。本第１の実施形態では、コンテキストデータ提供部１２０およびパーソナルデータ提供部１３０は、ユーザ端末１００がＡＰＩないしデータベースとして実装しているものとし、ローカルサーバ１４０はユーザ端末１００上で動作するＷｅｂサーバとする。
【００２４】
情報表示システム１１０は、データ受信部１１１、パブリックデータ処理部１１２、プライベートデータ処理部１１３、表示部１１４、リクエスト送信部１１５で構成される。本第１の実施形態においては、情報表示システム１１０はWebブラウザを用いるものとし、パブリックデータ処理部１１２、プライベートデータ処理部１１３はWebページの<HTML>〜</HTML>の要素で示される単位（フレーム要素）とし、HTMLデータとともに提供されたJavaScript（登録商標）プログラムが動くものとする。
【００２５】
ローカルサーバ１４０は、パーソナルデータ提供部１３０と接続され、ユーザ端末１００内に保存されているパーソナルデータをパーソナルデータ提供部１３０に問い合わせる機能を持つ。パーソナルデータ提供部１３０は情報表示システム１１０とは接続されておらず、情報表示システム１１０は直接パーソナルデータにアクセスすることはできない。
【００２６】
本実施形態のポイントは、パーソナルデータにアクセス可能な機能を持つローカルサーバ１４０をユーザ端末１００内に設けた上で、後述する手順でWebページを構成することによって、パーソナルデータにアクセス可能でありつつ外部へのデータ送受信が不可能なプライベートデータ処理部１１３を生成すること、さらにプライベートデータ処理部１１３およびパブリックデータ処理部１１２がそれぞれ生成した表示データをブラウザの既存機能を用いて合成してユーザに提示することにある。
【００２７】
以降は、図３および図４中のステップ番号に沿って説明する。図４は、サーバＳＶとユーザ端末１００の各部との間のデータの送受信動作を示すシーケンスである。
（ステップ１）  リクエスト送信部１１５は、ユーザからサービス提供者の提供するWebサイト（特定のＵＲＬ）にアクセスする指示を受けると、そのＵＲＬに対する接続要求を送信する。
【００２８】
（ステップ２）  接続要求をリクエスト受信部３により受信したサーバＳＶは、リクエストの内容に対応したWebサイトデータ＋クエリをデータ処理部２において作成し、データ送信部１から送信する。Webサイトデータは、通常のWebサイトで用いられるHTMLデータ及びJava（登録商標）Script（登録商標）プログラムであり、この例では現在地を読み出して周辺にある地図と店舗のアイコンを表示するプログラムが含まれるものとする。クエリは、図５に示すように、HTML部分とデータ部分で構成される。この例ではデータ部分には、店舗の名前と売っている商品のリストが組になったものが、複数店舗分記載されているものとする。HTML部分には、指定された店舗名の店で売っている商品リストの中から、ユーザの一年前から現在までの購買履歴に含まれる商品をリストアップして、HTMLとして整形して出力するためのデータおよびプログラムが記載されているものとする。
【００２９】
上記のWebサイトデータとクエリは、データ受信部１１１を経由して情報表示システム（ブラウザ）１１０に読み込まれ、Webページとなる（Ｓ２−１，Ｓ２−２）。このページをパブリックデータ処理部１１２とする。パブリックデータ処理部１１２は実際には通常のWebページであるため、端末外部のデータやブラウザがＡＰＩとして提供するコンテキストデータに自由にアクセスできる一方、ブラウザがＡＰＩを提供していない端末内部のパーソナルデータに対してはアクセスできない。
【００３０】
（ステップ３）  パブリックデータ処理部１１２は、サーバＳＶから渡されたクエリをローカルサーバ１４０に登録する（Ｓ３−１）。ローカルサーバ１４０は、クエリの内容を自身の記憶領域内に保存し（Ｓ３−２）、WebサーバとしてクエリのHTML部分およびデータ部分をホストする。このローカルサーバ１４０にホストされたWebサイトを情報表示システム（ブラウザ）１１０で読み込んだもの（Webページ）がプライベートデータ処理部１１３となる（Ｓ３−３）。
【００３１】
なお、パブリックデータ処理部１１２は、クエリ登録の際の戻り値として、ローカルサーバ１４０上に展開されたプライベートデータ処理部１１３のＵＲＬを得る（Ｓ３−４）。
一般にHTMLを用いた情報表示システム１１０においては、一つのHTMLで構成されたWebページAの中において、別のHTMLで構成されたWebページBをインライン参照（<iframe>タグのsrc要素に別のHTMLを指すURLを指定）することによって、WebページAがWebページBを内包する形で入れ子のように表示することができる。
【００３２】
本実施形態においても、戻り値として得たプライベートデータ処理部１１３のURLをインライン参照することによって、パブリックデータ処理部１１２内のWebページがプライベートデータ処理部１１３の生成するWebページを内包して表示することができる。なお、この際、<iframe>タグを用いた通常のHTMLの表記法によって、内包されるWebページの表示位置を指定することも可能である。
【００３３】
ローカルサーバ１４０は、パーソナルデータ提供部１３０に対するパーソナルデータの問い合わせ機能を持ち、プライベートデータ処理部１１３のプログラムに対してJavaScript（登録商標） APIを提供する。このため、プライベートデータ処理部１１３はパーソナルデータに対してアクセスできる。
【００３４】
一方で、ローカルサーバ１４０は、図６に示すようなHTTPヘッダを付与してクエリの内容をホストすることによって、Content Security Policy（非特許文献２）の技術にしたがって、このWebページ（プライベートデータ処理部１１３）の機能を制限する。具体的には、このWebページからの外部へのリクエスト送信が不可能となる。これによって、プライベートデータ処理部１１３は、パーソナルデータにアクセス可能でありながら、外部へのデータ送受信は不可能なWebページとなる。
【００３５】
（オプション１）  なお、パブリックデータ処理部１１２は、サーバＳＶから複数のクエリを受け取って、クエリ登録処理を複数回行ってもよい。その場合、プライベートデータ処理部１１３は複数個生成される。
（オプション２）  また、クエリに監査者Ｙによる電子署名を付与しても良い。監査者Ｙはクエリの内容（プログラム）を確認・検証し、パーソナルデータを適切に扱っていると判断した場合にクエリに電子署名を付与する。この署名によって、クエリの内容が適切であることを技術的に担保でき、またそれをユーザが確認することができる。
【００３６】
（ステップ４）  パブリックデータ処理部１１２では、Webサイトデータを用いて表示データを生成する。その際、Webサイトデータ内のプログラムの指示に従って、コンテキストデータ提供部に対してユーザ端末の現在地データを問合せ（Ｓ４−１）、現在地の緯度経度を得る（Ｓ４−２）。パブリックデータ処理部１１２は、リクエスト送信部１１５を経由して現在地情報（緯度経度）をサーバＳＶに対して送信する（Ｓ４−３）。サーバＳＶは、指定された緯度経度を中心とした地図データとともにその周辺の地域にある複数の店舗データ（店舗名、店舗位置）を返信する（Ｓ４−４，Ｓ４−５）。
【００３７】
（ステップ５）  パブリックデータ処理部１１２は、データ受信部１１１経由で地図データおよび店舗データを取得し、表示画面データ（HTML）を作成して（Ｓ５−１）、表示部１１４に渡す（Ｓ５−２）。表示部１１４では、受け取った表示データから画面イメージを構成して、ユーザに対して提示（表示）する。図７に表示イメージを示す。
【００３８】
（ステップ６）  上記ステップ５において図７の表示画面を提示されたユーザが、画面上に表示された店舗から一つを選択して表示操作（クリックあるいはタップ）を行った場合（Ｓ６−１）、パブリックデータ処理部１１２は選択された店舗名を受け取る（Ｓ６−２）。そして、ローカルサーバ１４０経由でプライベートデータ処理部１１３に対して、店舗に対する詳細情報表示の依頼を行う（Ｓ６−３，Ｓ６−４）。これを受けとったプライベートデータ処理部１１３は、その店舗名を用いてローカルサーバ１４０に対して問い合わせを行う（Ｓ６−５）。ローカルサーバ１４０は、上記ステップ３で登録されたクエリデータを参照して、その店舗（図７中ではＭＴストア）が販売している商品リストをプライベートデータ処理部１１３に対して返送する（Ｓ６−６）。
【００３９】
（ステップ７）  プライベートデータ処理部１１３は続けて、ローカルサーバ１４０に対して購買履歴問い合わせを行う（Ｓ７−１）。ローカルサーバ１４０は、パーソナルデータ提供部１３０に対し購買履歴問い合わせを行い（Ｓ７−２）、パーソナルデータ提供部１３０から購買履歴を取得すると（Ｓ７−３）、購買履歴をプライベートデータ処理部１１３に返送する（Ｓ７−４）。
【００４０】
そして、プライベートデータ処理部１１３は、その店舗が販売している商品リストに対してパーソナルデータを用いて並べ替えを行う（Ｓ７−５）。具体的には、プライベートデータ処理部１１３は、購買履歴情報を用いて店舗の商品リストをユーザが買った回数の多い順に（すなわちそのユーザへのおすすめ順に）並べ替えて、表示データ（HTML）として生成する（Ｓ７−６）。
【００４１】
（オプション３）  ローカルサーバ１４０が、パーソナルデータ提供部１３０にアクセスしてユーザ端末１００内のパーソナルデータの読み出しを行う際、ローカルサーバ１４０はユーザに対して、パーソナルデータを読み込む旨の注意喚起を行うオプトイン画面を表示しても良い。オプトイン画面を確認することによって、ユーザは自分のパーソナルデータがサービスに利用されることを認知することができるため、より安心してサービスを利用することができる。
【００４２】
さらに、オプトインの際、ローカルサーバ１４０はユーザに対して、パブリックデータ処理部１１２がローカルサーバ１４０に登録したクエリの署名を表示してもよい。ユーザはクエリに対して監査者Ｙが署名したことを確認することによって、自分のパーソナルデータにアクセスしようとしているプログラムが適切な処理を行うのかどうか第三者が内容を検証したことを確認できるため、より安心してサービスを利用することができる。
【００４３】
（オプション４）  なお、本第１の実施形態では、店舗ごとの商品リストはクエリ内のデータ部分に記載され、プライベートデータ処理部１１３はローカルサーバ１４０経由で商品リストを取得することしたが、これはHTML部分やプログラム内に直接記載されていてもよいし、パブリックデータ処理部１１２がサーバＳＶから取得してプライベートデータ処理部１１３への店舗情報表示依頼の際に追加パラメタの形で提供してもよい。
【００４４】
（ステップ８）  生成された表示データは、表示部１１４において、前に表示しているパブリックデータ処理部１１２の表示データに重ねあわされて表示される（図８）。図８に示す表示例では、例えばＭＴストアでおすすめの商品Ｂ、商品ＣがＭＴストアから吹き出しで表示されることになる。
【００４５】
（第１の実施形態による効果の説明）  
このような第１の実施形態を、従来のブラウザ技術を用いて実現する場合には、ブラウザ経由で購買履歴などのパーソナルデータにアクセスする手段は存在しないため、サービス提供者がユーザの購買履歴を既に持っていてそのデータをサーバＳＶに保管していない限りはこのようなサービスを提供できない。このため、既に多くの購買履歴を持っている大手事業者以外はこのようなサービスを提供することは困難であるし、大手事業者としてもユーザの全ての購買履歴を集めることは不可能であるため、十分なデータを用いたお勧め商品の提示は不可能である。
【００４６】
一方で、従来のアプリケーションの形態で実現する場合、アプリケーションがユーザ端末１００からパーソナルデータを読み出して外部サーバに送信してしまう、すなわちパーソナルデータの濫用が可能となってしまう。これを防ぐためにアプリケーションに一切のネットワーク通信機能・権限を持たせない場合は、地図データなどの外部データにアクセスできなくなるため、上記のような第１の実施形態は技術的に実現不可能である。
【００４７】
本発明による第１の実施形態では、外部データにアクセス可能なパブリックデータ処理部１１２において地図の表示データを作成し、外部にはアクセスできないがパーソナルデータにアクセス可能なプライベートデータ処理部１１３において商品お勧めデータを作成し、表示部１１４においてそれらを合成することによって、上記のような課題を回避しつつ第１の実施形態を実現している。
【００４８】
（第２の実施形態）  
本第２の実施形態では、上記第１の実施形態をベースに、プライベートデータ処理部１１３に外部アクセスのための例外を設けて、複数ユーザの滞在店舗リストを集計して人気の店舗のランキングを作成し、地図・店舗データをカスタマイズしてユーザに提供するシナリオについて説明する。
【００４９】
図９は、本第２の実施形態に係るユーザＡのユーザ端末１００、ユーザＢのユーザ端末２００とサーバＳＶＸと集計サーバ３００との接続構成例を示し、以下に各機能部について説明する。ユーザＡ,Ｂがそれぞれ端末１００,２００を所持している。各端末１００，２００内は、上記第１の実施形態で説明した各機能部に加えて、パーソナルデータ送信部１１６，２１２を持つ。
【００５０】
また、サーバＳＶＸを用いて本サービスを提供する事業者Ｘとは別の事業者Ｙが集計サーバ３００を持ち、ユーザＡおよびＢの購買履歴データはこの集計サーバ３００にのみ送られる。
【００５１】
本第２の実施形態では、上記第１の実施形態のステップ３において、ローカルサーバがWebサーバとしてクエリのHTML部分およびデータ部分をホストする際に、図１０に示すようなＨＴＴＰヘッダを付与する。この場合、ローカルサーバのＵＲＬに続いて、集計サーバ３００のＵＲＬが付加される。これにより、生成されるプライベートデータ処理部１１３は集計サーバ３００とのみ通信が可能になる。端末１００，２００で動作するプライベートデータ処理部１１３，２１１は、クエリに記載のプログラム内容に従い、ローカルサーバ経由で各端末１００，２００内の位置情報履歴データにアクセスして、過去に滞在した店舗のリストを作成し、そのデータ（リスト）を集計サーバ３００に送信する。
【００５２】
集計サーバ３００では、データ受信部３１３により複数のユーザから送られた滞在店舗リストのデータを受信し、データ集計部３１２により滞在店舗リストのデータを元に、滞在したユーザ数の多い店舗（即ち人気店舗）のランキングを作る処理（集計処理）を行い、データ送信部３１１により集計されたデータをサーバＳＶＸに送る。これによりサーバＳＶＸは、人気店舗ランキングをもとに、ユーザに提供するサービス内容をカスタマイズできる。具体的には、第１の実施形態のステップ４において、サーバＳＶＸが位置情報を元に店舗データをユーザに返送する際に、人気店舗を優先して返送することによって、ユーザにはより最適化された地図・店舗データが表示される。
【００５３】
本第２の実施形態では、サービスの提供事業者Ｘと集計サーバ３００の提供事業者Ｙを分離し、プライベートデータ処理部１１３，２１１が唯一通信できる対象を集計サーバ３００に限定することによって、サービスの提供事業者Ｘに直接パーソナルデータを送信しなくても、複数ユーザのパーソナルデータを用いてサービスをカスタマイズすることを可能としている。
【００５４】
（その他の実施形態）  
本発明の装置は、コンピュータとプログラムによっても実現でき、プログラムを記録媒体に記録することも、ネットワークを通して提供することも可能である。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【００５５】
１…データ送信部、２…データ処理部、３…リクエスト受信部、１００，２００…ユーザ端末、１１０，２１０…情報表示システム（ブラウザ）、１１１…表示データ受信部、１１２…パブリックデータ処理部、１１３，２１１…プライベートデータ処理部、１１４…表示部、１１５…リクエスト送信部、１１６，２１２…パーソナルデータ送信部、３００…集計サーバ、３１１…データ送信部、３１２…データ集計部、３１３…データ受信部、ＳＶ，ＳＶＸ…サーバ。
【図１】
0006014563.tif 000002
【図２】
0006014563.tif 000003
【図３】
0006014563.tif 000004
【図４】
0006014563.tif 000005
【図５】
0006014563.tif 000006
【図６】
0006014563.tif 000007
【図７】
0006014563.tif 000008
【図８】
0006014563.tif 000009
【図９】
0006014563.tif 000010
【図１０】
0006014563.tif 000011