(57)【要約】【課題】メッセージの送信対象者を選択する際の選択ミスを減少させるレイヤを生成する。【解決手段】メッセージの送信対象者を画像で選択させる吹き出しオブジェクトを生成し、この吹き出しオブジェクトから選択した送信対象者だけがユーザによって入力されたメッセージを閲覧できるようにする。【選択図】図３
2010067224.tif 000002
【特許請求の範囲】
【請求項１】
所定の位置および縮尺の地図画像データを生成し、生成した前記地図画像データにおいて複数のユーザが所属する各機関が存在する位置にそれぞれ機関アイコンを合成する地図生成部と、
前記機関に所属する各ユーザに関する情報が書き込まれているユーザテーブルと、
前記機関に所属する各ユーザに関する画像データが記憶されている画像データディレクトリと、
操作者によって選択された前記機関アイコンに対応する前記機関に所属する各ユーザを前記ユーザテーブルから検索して、該当する各ユーザに関する情報を取得するとともに、前記該当する各ユーザに関する画像データを前記画像データディレクトリより取得し、取得した該当する各ユーザに関する情報および取得した前記該当する各ユーザに関する画像データを含むレイヤである吹き出しオブジェクトを生成するレイヤ生成部と、
前記吹き出しオブジェクトで表される前記該当する各ユーザの中から前記操作者によって選択された送信対象者を識別するための識別情報と前記操作者によって入力される前記送信対象者に向けたメッセージをメッセージテーブルに格納するメッセージ登録部と
を備えるサービス提供装置。
【請求項２】
さらに、
前記複数のユーザが所属する各機関に関連する地理的な情報が書き込まれている機関テーブルを備え、
前記レイヤ生成部は、
前記操作者によって選択された前記機関アイコンがある座標を示すマウスカーソル位置情報を前記機関アイコンに対応する前記機関の地理情報に変換するマウスカーソル情報変換部と、
前記地理情報に一致する機関を前記機関テーブルから検索し、検索した前記機関に所属する、前記該当する各ユーザに関する情報を前記ユーザテーブルから取得するデータ抽出部と、
前記データ抽出部で取得された前記該当する各ユーザに関する情報に基づいて、前記画像ディレクトリから前記該当する各ユーザの画像データを取得し、取得した画像データと前記データ抽出部で取得された前記該当する各ユーザに関する情報とを対応付けたレイヤである吹き出しオブジェクトを生成する吹き出しオブジェクト生成部と
を備える
請求項１に記載のサービス提供装置。
【請求項３】
さらに、
前記吹き出しオブジェクトから選択された前記送信対象者を一覧表示したレイヤである送信対象者一覧表を生成する送信対象者一覧表生成部を備える請求項２に記載のサービス提供装置。
【請求項４】
前記送信対象者一覧表生成部は、前記吹き出しオブジェクトから前記送信対象者が選択される毎に前記送信対象者一覧表を更新する請求項３に記載のサービス提供装置。
【請求項５】
クライアントと、前記クライアントに情報を提供するサービス提供サーバとよりなるサービス提供システムであって、
前記クライアントは、
所定の操作情報を出力する操作部と、
所定の情報を表示する表示部と、
入力された情報に基づいて前記表示部を制御するとともに、複数のレイヤが入力された場合、前記レイヤを所定の順番および位置に重ねて前記表示部に表示させる表示制御部と
前記操作部から入力された前記情報を送信するとともに、所定の情報を受信して前記表示制御部に渡す入出力制御部と、
を備え、
前記サービス提供サーバは、
操作者の前記操作部に対する操作から得られる情報に基づいて所定の縮尺の地図画像データを生成し、生成した前記地図画像データにおいて複数の各ユーザが所属する機関が存在する位置に機関アイコンを合成する地図生成部と、
前記複数の各ユーザに関する情報が書き込まれているユーザテーブルと、
前記複数の各ユーザに関する画像データが記憶されている画像データディレクトリと、
前記操作者の操作部に対する操作に基づいて選択された前記機関アイコンに対応する機関に所属する各ユーザを前記ユーザテーブルから検索して、該当する各ユーザに関する情報を取得するとともに、前記該当する各ユーザに関する画像データを前記画像データディレクトリより取得し、取得した、前記該当する各ユーザに関する情報および前記該当する各ユーザに関する画像データを含むレイヤである吹き出しオブジェクトを生成するレイヤ生成部と、
前記吹き出しオブジェクトを前記入出力部に送信する送信部と、
前記操作者の前記操作部に対する操作に基づいて、前記吹き出しオブジェクトで表される前記該当する各ユーザの中から選択された送信対象者を識別するための識別情報と前記操作者によって前記操作部から入力される前記送信対象者に向けたメッセージをメッセージテーブルに格納するメッセージ登録部と
を備えるサービス提供システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メッセージを送信する送信対象者を視覚的に選択するためのレイヤを生成するサービス提供装置およびサービス提供システムに関する。
【背景技術】
【０００２】
近年、友人・知人間のコミュニケーションを促進する手段や場、あるいは趣味や嗜好、居住地域、出身校、友人の友人といった自身と直接関係のない他人との繋がりを通じて新たな人間関係を構築する場としてＳＮＳ（Social Networking site）を利用する人が増えている。ＳＮＳとは、社会的ネットワークの構築のできるサービスやｗｅｂサイトのことである。なお、本発明の先行技術を特許文献１に記す。
【０００３】
【特許文献１】特開２００８−１５８６９５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、特許文献１に記載されたＳＮＳの技術は、特定の人だけが読めるメッセージを作成し、送信を可能としている。しかしながら、ユーザは、メッセージを送信対象者（特定の人）に送信する際に、当該送信対象者を識別する文字列（例えば、メールアドレス等）を入力しなければならないので、非常に煩わしかった。
【０００５】
また、予め複数のメールアドレス等が登録されたアドレス帳から送信対象者に該当するメールアドレスを選択することによって、ユーザは文字列を直接入力するという作業を省くことはできるが、メールアドレスを選択する際にメールアドレスの選択ミスが生じる可能性がある。
【０００６】
本発明はかかる点に鑑みてなされたものであり、メッセージの送信対象者を視覚的に認識しながら、簡単な操作だけで選択できるユーザインタフェースを生成する、サービス提供装置およびサービス提供システムを提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するため、本発明は、所定の位置および縮尺の地図画像データを生成し、生成した地図画像データにおいて複数のユーザが所属する各機関が存在する位置にそれぞれ機関アイコンを合成する地図生成部と、機関に所属する各ユーザに関する情報が書き込まれているユーザテーブルと、機関に所属する各ユーザに関する画像データが記憶されている画像データディレクトリと、操作者によって選択された機関アイコンに対応する機関に所属する各ユーザをユーザテーブルから検索して、該当する各ユーザに関する情報を取得するとともに、該当する各ユーザに関する画像データを画像データディレクトリより取得し、取得した該当する各ユーザに関する情報および取得した該当する各ユーザに関する画像データを含むレイヤである吹き出しオブジェクトを生成するレイヤ生成部と、吹き出しオブジェクトで表される該当する各ユーザの中から操作者によって選択された送信対象者を識別するための識別情報と操作者によって入力される送信対象者に向けたメッセージをメッセージテーブルに格納するメッセージ登録部とを備えるものである。
【０００８】
上記構成によれば、吹き出しオブジェクトからメッセージの送信対象者の画像データを選択するだけで、選択した送信対象者だけがユーザによって入力されたメッセージを閲覧できるようにすることができる。
【発明の効果】
【０００９】
本発明によれば、ユーザはメッセージを送信する相手を視覚的に確認しながら、メッセージを送信する相手を選択することができるので、メッセージを送信する相手を間違いにくくすることが可能である。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の実施の形態の例を、図１〜図１７を参照して説明する。
【００１１】
［１．  サービス提供システム１０１］
図１は、本発明の一実施形態の例であるサービス提供システム１０１の概略図である。
これより説明する、本実施形態のサービス提供システム１０１は、地図を利用してメッセージを送信する送信対象者を選択できるようにしたものである。特に、医療機関に所属する医師や看護師等を対象とした、ソーシャルネットワーキングサービス（社会的ネットワークの構築のできる、ｗｅｂベースのコミュニケーションサービス）を形成するシステムである。
本実施形態の地図生成システムは、クライアントＰＣ１０２（Personal Computer）のユーザ１０３が任意の相手にメッセージを送信する際、ユーザ１０３が当該メッセージの送信対象者を感覚的に選択するための情報をユーザ１０３に提供するものである。
【００１２】
このサービス提供システム１０１は、クライアントＰＣ１０２、サービス提供サーバ１０４および地図サーバ１０５より構成されており、これらの各要素がインターネット１０６上で相互に接続されている。
【００１３】
クライアントＰＣ１０２は、周知のパーソナルコンピュータであり、様々な要求をインターネット１０６を介してサービス提供サーバ１０４に対して行うものである。
【００１４】
サービス提供サーバ１０４は、クライアントＰＣ１０２からの要求に応じた情報を生成し、生成した情報をクライアントＰＣ１０２に送信するものである。生成した情報とは、後述する所定のｈｔｍｌ文書や画像データ等を指す。クライアントＰＣ１０２からの要求が地図生成に関連したものである場合は、地図提供サーバは当該地図生成に必要な地図データを取得するための要求（以下、「地図範囲指定要求」という）を地図生成サーバに対して行う。
【００１５】
地図生成サーバ１０５は、サービス提供サーバ１０４からの要求に基づいて、所定の範囲の地図の画像データ（以下、「地図画像データ」という）を作成する。そして、地図サーバ１０５は、生成した地図画像データを周知のＨＴＴＰ（Hyper Text Transfer Protocol）にてサービス提供サーバ１０４へ送信する。
【００１６】
［２．  クライアントＰＣ１０２］
次に、図１のクライアントＰＣ１０２について説明する。
図２は、クライアントＰＣ１０２の機能的な構成を示すブロック図である。図２は本実施形態に用いられる機能ブロック図のみを示している。したがって、本実施形態と関係のない機能の記載は省略している。
【００１７】
クライアントＰＣ１０２は、ｗｅｂブラウザ２０２と、表示部２０５と、操作部２０６を含んで構成される。
【００１８】
このｗｅｂブラウザ２０２は、入出力制御部２０３と、表示制御部２０４とから構成される、インターネット１０６上にあるｗｅｂページを閲覧するためのアプリケーションソフトである。
【００１９】
入出力制御部２０３は、サービス提供サーバ１０４で生成されるｈｔｍｌ文書や画像データ等をダウンロードするものである。この入出力制御部２０３は、ダウンロードしたｈｔｍｌ文書や画像データ等を表示制御部２０４に供給するために、当該表示制御部２０４に接続されている。
【００２０】
また、入出力制御部２０３は、操作部２０６に対するユーザ１０３の各指示をインターネット１０６上のサービス提供サーバ１０４に出力する役割もしている。ユーザ１０３は、クライアントＰＣ１０２の操作者ともいえる。
【００２１】
表示制御部２０４は、入出力制御部２０３から入力されるｈｔｍｌ文書等のレイアウトを解析し、この解析結果に基づく画面を表示部２０５に表示させるものである。この表示制御部２０４は、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＦｌａｓｈおよびＪａｖａ（登録商標）等で記述されたアプリケーションソフトによって実現される。
【００２２】
表示制御部２０４はレイヤ情報処理部２０７を含んでいる。このレイヤ情報制御部は、表示制御部２０４が動作させるアプリケーションソフトに基づいて、入出力制御部２０３から供給される様々なレイヤを所定の順序で重ねて表示部２０５に表示させるものである。
【００２３】
操作部２０６は、キーボードおよびポインティングデバイス等である。ユーザ１０３は、このキーボードやポインティングデバイス等を操作することにより、表示部２０５に表示されたｈｔｍｌ文書の各リンクを選択したり、ｈｔｍｌ文書を表示させた表示画面の所定のエリアに文字列を入力したりする。このようなユーザ１０３の操作部２０６に対する操作は、入出力制御部２０３を介して、インターネット１０６上のサービス提供サーバ１０４に送信される。
【００２４】
［３．  サービス提供サーバ１０４の構成］
次に、図１のサービス提供サーバ１０４について説明する。
図３は、サービス提供サーバ１０４の機能的な構成を示すブロック図である。
サービス提供サーバ１０４は、概略的にはＨＴＴＰを用いて、図１に示すクライアントＰＣ１０２にｈｔｍｌ文書や画像データ等を送信する、ｗｅｂサーバの機能を有している。この機能は、クライアントＰＣ１０２のｗｅｂブラウザ２０２からの要求に応じて行われるものである。
【００２５】
サービス提供サーバ１０４は、一般的なネットワークＯＳが稼働するコンピュータである。ネットワークＯＳは、一例として、ＦｒｅｅＢＳＤ等のＢＳＤ系、あるいはＬｉｎｕｘ（登録商標）等のＰＯＳＩＸ（Portable Operating System Interface for UNIX）（ＵＮＩＸは登録商標）系ＯＳ等が挙げられる。
【００２６】
サービス提供サーバ１０４は、上述したように、ｗｅｂサーバ機能を持つｗｅｂサーバプログラム３０２備えている。このｗｅｂサーバプログラム３０２は、クライアントＰＣ１０２から来る要求（コマンド）を受信し、これに応じて、ＨＴＴＰにてｈｔｍｌ文書や画像データ等をクライアントＰＣ１０２へ送信する機能を提供する。端的に言えば、ｗｅｂサーバソフトウェアであり、一例としてはＡｐａｃｈｅ（http://www.apache.org/）等が、これに該当する。
【００２７】
また、ｗｅｂサーバプログラム３０２は、クライアントＰＣ１０２の要求に応じ、ｃｇｉ（Common Gateway Interface）の実行も行う。ｃｇｉの実体は、標準出力にテキストを出力するプログラムである。このｃｇｉが生成するテキストが、ｗｅｂサーバプログラム３０２によってＨＴＴＰにてクライアントＰＣ１０２へ送信される。図３に示す一例では、ログイン画面生成ｃｇｉ３０３、地図生成ｃｇｉ３０４、レイヤ生成ｃｇｉ３０５およびメッセージ登録ｃｇｉ３０７が用意されている。
【００２８】
これらのｃｇｉを構成する要素としては、どのようなプログラミング言語であってもよい。ｐｅｒｌ（http://www.perl.org/）やＰＨＰ（http://php.net/）、ｐｙｔｈｏｎ（http://www.python.org/ja/）、ｒｕｂｙ（http://www.ruby-lang.org/ja/）等のインタプリタ言語のみならず、Ｃ言語やＪａｖａ（登録商標）等のコンパイルを要する言語であってもよい。簡単な内容であれば、シェルスクリプトであってもよい。
【００２９】
各々のｃｇｉは、ｗｅｂブラウザ２０２に表示する画面を作るためのｈｔｍｌ文書や当該画面に重ねて表示するレイヤを生成する。
【００３０】
ログイン画面生成ｃｇｉ３０３は、クライアントＰＣ１０２から来るアクセス要求に応じて、ｗｅｂサーバプログラム３０２によって実行される。
ログイン画面生成ｃｇｉ３０３は、ログイン画面をクライアントＰＣ１０２の表示部２０５に表示するログイン画面ｈｔｍｌ文書を生成する。ログイン画面は、クライアントＰＣ１０２のユーザ１０３がアクセスするため情報であるユーザＩＤを入力するための画面である。なお、ログイン画面の詳細については図８にて後述する。
【００３１】
地図生成ｃｇｉ３０４は、クライアントＰＣ１０２から来るアクセス要求に応じて、ｗｅｂサーバプログラム３０２によって実行される。
地図生成ｃｇｉ３０４は、医療機関テーブル３０８、ユーザテーブル３０９およびクライアントＰＣ１０２から送信される、ログイン画面に入力された情報を利用して、所定の範囲の地図および当該地図上にある医療機関の位置を示すアイコンを重ねた地図（以下、「医療機関地図」という）を生成するものである。
【００３２】
地図生成ｃｇｉ３０４は、ユーザテーブル３０９に記載されたユーザ１０３の所属する医療機関の住所（以下、「ユーザ医療機関住所」という）に基づいて、当該ユーザ医療機関住所を中心とする所定の縮尺の地図である医療機関地図を生成する。さらに、生成した医療機関地図を含む所定の画面（以下、「医療機関地図画面」という）をクライアントＰＣの表示部２０５に表示する医療機関地図画面ｈｔｍｌ文書を生成する。なお、医療機関地図の詳細については、図９にて説明する。
【００３３】
地図生成ｃｇｉ３０４は、ユーザ１０３が送信する情報、又はユーザ１０３固有の情報に基づいて、地図画像データを生成する。
地図生成ｃｇｉ３０４が、ログイン画面生成ｃｇｉ３０３から呼び出されたときには、ログインユーザであるユーザ１０３の所属する医療機関の位置の情報を、医療機関テーブル３０８およびユーザテーブル３０９から取得して、地図の表示位置を決定する。
【００３４】
地図生成ｃｇｉ３０４が生成する地図画像データには、所定の位置および縮尺の地図の上に、その表示範囲の中に存在する医療機関が、アイコン(以下「医療機関アイコン」)で表示される。この医療機関アイコンは、医療機関テーブルからその住所の情報を取得することで作成される。医療機関テーブル３０８は、サービス提供サーバ１０４に登録してある医療機関についての様々な情報が書き込まれているテーブルである。ユーザテーブル３０９は、サービス提供サーバ１０４に登録してある医師についての様々な情報が書き込まれているテーブルである。なお、医療機関テーブル３０８およびユーザテーブル３０９の詳細については、図５にて後述する。
【００３５】
レイヤ生成ｃｇｉ３０５は、クライアントＰＣ１０２のレイヤ情報処理部２０７を通じて表示部２０５に表示する様々な画像データを生成する。その処理の概略は以下の通りである：
（１）まず、クライアントＰＣ１０２の表示部に表示された医療機関地図画面上におけるマウスカーソルの状態を、インターネット１０６およびｗｅｂサーバプログラム３０２を介して取得する。
（２）そして、クライアントＰＣ１０２の表示部に表示された医療機関地図画面上におけるマウスカーソルの状態に応じて、医療機関の情報および当該医療機関に所属している医師の情報を、医療機関テーブル３０８およびユーザテーブル３０９から読み出す。
（３）その後、その読み出した情報を一時ファイルディレクトリ３１０に記憶する。（４）そして、一時ファイルディレクトリ３１０に記憶された各情報に基づいて、レイヤ情報処理部２０７が設定するレイヤ毎に表示される様々な画像データを生成する。
なお、レイヤ生成ｃｇｉ３０５の詳細な構成については、図４にて後述する。
【００３６】
レイヤ生成ｃｇｉ３０５は、ユーザ１０３がメッセージを送信する送信対象者を選択するために医療機関毎に医師の名前および写真をまとめた吹き出しオブジェクトと、この吹き出しオブジェクトからユーザ１０３が選択した医師の名前をまとめた送信対象者一覧表と、ユーザ１０３が送信対象者に送信するメッセージを入力するためのメッセージダイアログとを生成する。なお、吹き出しオブジェクトの具体例については図１１および図１２で説明し、送信対象者一覧表の具体例については図１３および図１４で説明し、メッセージダイアログについては図１５で説明する。
【００３７】
メッセージ登録ｃｇｉ３０７は、ユーザテーブル３０９を利用して、クライアントＰＣ１０２のユーザ１０３によってメッセージダイアログに入力されたテキスト情報と、吹き出しオブジェクトから選択された送信対象者との対応付けを行う。そして、当該送信対象者のみがアクセス可能なメッセージテーブル３１１を生成するものである。
【００３８】
［４．  レイヤ生成ｃｇｉ３０５の構成］
次に、サービス提供サーバ１０４のレイヤ生成ｃｇｉ３０５の詳細について説明する。
図４は、レイヤ生成ｃｇｉ３０５およびその周辺にある機能ブロックを示すブロック図である。
【００３９】
レイヤ生成ｃｇｉ３０５は、データ受信部４０２と、マウスカーソル情報変換部４０３と、データ抽出部４０４と、吹き出しオブジェクト生成部４０５と、送信対象者一覧表生成部４０６と、メッセージダイアログ生成部４０７と、選択情報判定部４１１とよりなる。
【００４０】
データ受信部４０２は、ｗｅｂサーバプログラム３０２を通じて、インターネット１０６上のクライアントＰＣ１０２からユーザ１０３の操作部２０６に対する操作情報を取得するものである。データ受信部４０２は、取得した操作情報の種類を判別し、その判別結果に基づいて入力された情報をマウスカーソル情報変換部４０３、選択情報判定部４１１あるいはメッセージダイアログ生成部４０７に出力するものである。
【００４１】
データ受信部４０２の処理には、クライアントＰＣ１０２から受信する操作情報の内容に応じて、以下に示す３つのケースがある。
【００４２】
（ケース１）
操作情報が医療機関地図上におけるマウスカーソルの動き（以下、「マウスカーソル位置情報」という）の場合、データ受信部４０２はマウスカーソル位置情報をマウスカーソル情報変換部４０３へ出力する。
【００４３】
（ケース２）
操作情報が前述の吹き出しオブジェクトに対する送信対象者の追加／削除についての情報（以下、「送信対象者変更情報」という）の場合、データ受信部４０２は、この送信対象者変更情報を選択情報判定部４１１へ出力する。
【００４４】
（ケース３）
操作情報が前述のメッセージダイアログを要求する情報（以下、「メッセージダイアログ要求情報」という）の場合、データ受信部４０２は、このメッセージダイアログ要求情報をメッセージダイアログ生成部４０７へ出力する。
【００４５】
マウスカーソル情報変換部４０３は、ｗｅｂサーバプログラム３０２を介してインターネット１０６上のクライアントＰＣ１０２から送信されるマウスカーソル位置情報に基づいて、表示部２０５に表示された医療機関地図画面のどの位置（緯度・経度）にマウスカーソルがあるのかを検出するものである。すなわち、マウスカーソル情報変換部４０３はマウスカーソル位置情報を緯度・経度に変換する機能を有する。マウスカーソル情報変換部４０３は、変換した緯度・経度をデータ抽出部４０４へ出力する。
【００４６】
データ抽出部４０４は、クライアントＰＣ１０２においてマウスカーソルが示す医療機関に所属する医師に関する情報を取得するものである。具体的には、データ抽出部４０４は、マウスカーソル情報変換部４０３で検出された緯度・経度に基づいて、医療機関テーブル３０８およびユーザテーブル３０９を検索し、該当する医師の情報を抽出する。データ抽出部４０４は、抽出した各情報を一時記録した選択医療機関テーブル４０８および送信対象者テーブル４０９を生成する。なお、データ抽出部４０４で利用する各テーブルの詳細については図５にて詳述し、データ抽出部４０４で生成される各テーブルの詳細については図６にて後述する。
【００４７】
吹き出しオブジェクト生成部４０５は、データ抽出部４０４で生成された送信対象者テーブル４０９に基づいて、クライアントＰＣ１０２のユーザ１０３が選択した医療機関に所属する医師の名前および画像を含む吹き出しオブジェクトを生成する。吹き出しオブジェクト生成部４０５は、生成した吹き出しオブジェクトをインターネット１０６上のクライアントＰＣ１０２に送信するために、吹き出しオブジェクトをｗｅｂサーバプログラム３０２に出力する。なお、医師の画像は、ユーザテーブル３０９に記憶されている医師全員の顔写真の画像が記録された画像データディレクトリ３０６より取得される。
【００４８】
選択情報判定部４１１は、データ受信部４０２から入力される送信対象者変更情報に基づいて、送信対象者テーブル４０９および選択送信対象者テーブル４０９を更新／生成するものである。なお、この選択情報判定部４１１による送信対象者テーブル４０９および選択送信対象者テーブル４１０の更新に伴い、吹き出しオブジェクト生成部４０５は更新された送信対象者テーブル４０９に基づいて吹き出しオブジェクトを再生成する。
【００４９】
送信対象者一覧表生成部４０６は、選択情報判定部４１１による選択送信対象者テーブル４１０の更新をトリガに、更新された選択送信対象者テーブル４１０に書き込まれている医師の名前を一覧表示した送信対象者一覧表を生成するものである。送信対象者一覧表生成部４０６は、この送信対象者一覧表をインターネット１０６上のクライアントＰＣ１０２に送信するために、ｗｅｂサーバプログラム３０２に送信対象者一覧表を出力する。
【００５０】
メッセージダイアログ生成部４０７は、データ受信部４０２から入力されるメッセージダイアログ要求情報をトリガに、前述のメッセージダイアログを生成するものである。メッセージダイアログ生成部４０７は、生成したメッセージダイアログをインターネット１０６上のクライアントＰＣ１０２に送信するために、ｗｅｂサーバプログラム３０２にメッセージダイアログを出力する。
【００５１】
[５．  サービス提供サーバ１０４が予め備える各テーブル]
次に、サービス提供サーバ１０４が備える各テーブルについて説明する。
図５は、サービス提供サーバ１０４に含まれる各テーブルのフィールドを示している。
【００５２】
図５（ａ）は、医療機関テーブル３０８である。
医療機関テーブル３０８は、「医療機関名」フィールドと、「医療機関ＩＤ」フィールドと、「住所」フィールドと、「緯度・経度」フィールドよりなる。
「医療機関名」フィールドには、サービス提供サーバ１０４に登録された各医療機関の名称が書き込まれている。
「医療機関ＩＤ」フィールドには、サービス提供サーバ１０４に登録された登録された各医療機関を識別するための識別番号が書き込まれている。
「住所」フィールドには、サービス提供サーバ１０４に登録された各医療機関の住所が書き込まれている。
「緯度・経度」フィールドには、サービス提供サーバ１０４に登録された各医療機関の住所の緯度・経度が書き込まれている。
【００５３】
図５（ｂ）は、ユーザテーブル３０９である。
ユーザテーブル３０９は、「ユーザＩＤ」フィールドと、「名前」フィールドと、「医療機関ＩＤ」と、「写真保存先」フィールドよりなる。
「ユーザＩＤ」フィールドには、サービス提供サーバ１０４に登録された各ユーザである医師を識別するための識別番号が書き込まれている。
「名前」フィールドには、サービス提供サーバ１０４に登録された各ユーザである医師の名称が書き込まれている。
「医療機関ＩＤ」フィールドには、サービス提供サーバ１０４に登録された各医療機関を識別するための識別番号が書き込まれている。
「写真保存先」フィールドには、サービス提供サーバ１０４に登録された各ユーザである医師の顔写真の画像データの保存先が書き込まれている。一例としては、画像ファイル名である。
【００５４】
［６．  サービス提供サーバ１０４で生成されるテーブル］
図６は、サービス提供サーバ１０４で生成されるテーブルである。
図６（ａ）は、レイヤ生成ｃｇｉ３０５のデータ抽出部４０４で生成される一時ファイルである医療機関テーブル３０８を示す。
「医療機関ＩＤ」フィールドには、医療機関テーブル３０８の「医療機関ＩＤ」フィールドから読み出された各医療機関を識別するための識別番号が書き込まれる。
「現在選択中」フィールドは、フラグフィールドである。この「現在選択中」フィールドには、‘０’あるいは‘１’が書き込まれる。‘０’が書き込まれている場合は、この‘０’が書き込まれているレコードに対応する医療機関がクライアントＰＣ１０２のユーザ１０３によって選択されていないことを示している。また、‘１’が書き込まれている場合は、この‘１’が書き込まれているレコードに対応する医療機関がクライアントＰＣ１０２のユーザ１０３によって選択されていることを示している。
【００５５】
「一時ファイル名」フィールドには、一時ファイルである送信対象者テーブル４０９のファイル名が書き込まれる。なお、この一時ファイル名は、乱数等ランダムに生成される。
【００５６】
図６（ｂ）は、レイヤ生成ｃｇｉ３０５のデータ抽出部４０４で生成される一時ファイルである送信対象者テーブル４０９を示す。
「ユーザＩＤ」フィールドには、選択医療機関テーブル４０８の「現在選択中」フィールドが‘１’のレコードの医療機関ＩＤに対応する医療機関に所属する医師のユーザＩＤが書き込まれる。
「名前」フィールドには、選択医療機関テーブル４０８の「現在選択中」フィールドが‘１’のレコードの医療機関ＩＤに対応する医療機関に所属する医師の名称が書き込まれる。
「写真保存先」フィールドには、選択医療機関テーブル４０８の「現在選択中」フィールドが‘１’のレコードの医療機関ＩＤに対応する医療機関に所属する医師の顔写真の画像データの保存先が書き込まれる。
「リスト追加」フィールドは、フラグフィールドである。この「リスト追加」フィールドには、‘０’あるいは‘１’が書き込まれる。‘０’が書き込まれている場合は、この‘０’が書き込まれているレコードに対応する医師がクライアントＰＣ１０２のユーザ１０３にとってのメッセージ送信対象者でないことを示している。また、‘１’が書き込まれている場合は、この‘１’が書き込まれているレコードに対応する医師がクライアントＰＣ１０２のユーザ１０３にとってのメッセージ送信対象者であることを示している。
【００５７】
図６（ｃ）は、レイヤ生成ｃｇｉ３０５のデータ抽出部４０４で生成／更新される一時ファイルである選択送信対象者テーブル４１０を示す。
「ユーザＩＤ」フィールドには、送信対象者テーブル４０９の「リスト追加」フィールドが‘１’のレコードの「ユーザＩＤ」が、書き込まれる。
「名前」フィールドには、送信対象者テーブル４０９の「リスト追加フィールド」が‘１’のレコードの「名前」が送信者対象者テーブルが更新されるたびに書き込まれる。
【００５８】
図４（ｃ）は、メッセージ登録ｃｇｉ３０７で生成されるメッセージテーブル３１１である。
メッセージテーブル３１１は、「送信者ユーザＩＤ」フィールドと、「メッセージ」フィールドと、「送信対象者ユーザＩＤ」フィールドとよりなる。
「送信者ユーザＩＤ」フィールドには、ログイン画面よりクライアントＰＣ１０２のユーザ１０３が入力したユーザＩＤが書き込まれる。
「メッセージ」フィールドには、クライアントＰＣ１０２の表示部２０５に表示されたメッセージダイアログに入力したテキスト情報が書き込まれる。
「送信対象者ユーザＩＤ」は、選択送信対象者テーブル４１０に書き込まれている「ユーザＩＤ」が書き込まれる。
【００５９】
［７．  サービス提供システム１０１の動作］
次に、サービス提供システム１０１の動作の流れを説明する。
図７は、クライアントＰＣ１０２およびサービス提供サーバ１０４の間で行われる動作を示すシーケンス図である。
【００６０】
まず、ユーザ１０３は、クライアントＰＣ１０２のｗｅｂブラウザ２０２を起動する（ステップＳ７０１）。すると、クライアントＰＣ１０２のｗｅｂブラウザ２０２は、インターネット１０６およびサービス提供サーバ１０４のｗｅｂサーバプログラム３０２を介して、ログイン画面生成ｃｇｉ３０３にアクセスする（ステップＳ７０２）。これが、ログイン画面要求である。
【００６１】
ログイン画面生成ｃｇｉ３０３は、クライアントＰＣ１０２のｗｅｂブラウザ２０２のアクセスを受けて実行される（ステップＳ７０３）。そして、図８にて後述するログイン画面を構成するログイン画面ｈｔｍｌ文書を作成し、ｗｅｂサーバプログラム３０２を通じてインターネット１０６上のクライアントＰＣ１０２の入出力制御部２０３に送信する（ステップＳ７０４）。
【００６２】
入出力制御部２０３はログイン画面生成ｃｇｉ３０３で生成されたログイン画面ｈｔｍｌ文書を受信すると、当該ログイン画面ｈｔｍｌ文書を表示制御部２０４に出力する。そして、表示制御部２０４は、このログイン画面ｈｔｍｌ文書を解析し、解析結果に基づいたログイン画面（図８にて後述）を表示部２０５に表示させる（ステップＳ７０５）。
【００６３】
ユーザ１０３は、ログイン画面の後述するユーザＩＤ入力領域に、操作部２０６からユーザＩＤを入力する。すると、入出力制御部２０３は、操作部２０６から入力されたユーザＩＤをインターネット１０６およびｗｅｂサーバプログラム３０２を介して、サービス提供サーバ１０４の地図生成ｃｇｉ３０４へ送信する（ステップＳ７０６）。
【００６４】
地図生成ｃｇｉ３０４は、クライアントＰＣ１０２からのアクセスを受けて実行されると、以下の動作を行う。まず、クライアントＰＣ１０２から送信されたユーザＩＤでユーザテーブル３０９の「ユーザＩＤ」フィールドを検索し、ヒットしたレコードの医療機関ＩＤを取得する。地図生成ｃｇｉ３０４は、取得した医療機関ＩＤで医療機関テーブル３０８の「医療機関ＩＤ」フィールドを検索し、ヒットしたレコードの緯度・経度を取得する。次に、地図生成ｃｇｉ３０４は、取得した緯度・経度を中心とする地図を地図サーバ１０５から取得する。
【００６５】
地図生成ｃｇｉ３０４は、地図サーバ１０５から取得した地図の範囲内にある医療機関を医療機関テーブル３０８から検索し、地図上にある医療機関の位置にアイコンを表示した医療機関地図画面をクライアントＰＣ１０２の表示部２０５に表示するｈｔｍｌ文書（以下、「医療機関地図ｈｔｍｌ文書」という）を生成する（ステップＳ７０７）。なお、医療機関地図画面については図９にて後述する。
【００６６】
そして、地図生成ｃｇｉ３０４は、生成した医療機関地図ｈｔｍｌ文書をｗｅｂサーバおよびインターネット１０６を介してクライアントＰＣ１０２の入出力制御部２０３へ送信する（ステップＳ７０８）。
【００６７】
クライアントＰＣ１０２の入出力制御部２０３は、地図生成ｃｇｉ３０４で生成された医療機関地図ｈｔｍｌ文書を受信すると、この医療機関地図ｈｔｍｌ文書を表示制御部２０４に出力する。そして、表示制御部２０４は、この医療機関地図ｈｔｍｌ文書を解析し、解析結果に基づいた医療機関地図画面（図９にて後述）を表示部２０５に表示させる（ステップＳ７０９）。
【００６８】
ユーザ１０３は表示部２０５に表示されている医療機関地図画面を見ながら、操作部２０６に対して所定の操作を行う。すると、入出力制御部２０３は、ユーザの操作部２０６に対する操作情報（マウスカーソル位置情報、送信対象者変更情報あるいはメッセージダイアログ要求情報）をインターネット１０６およびｗｅｂサーバプログラム３０２を介して、レイヤ生成ｃｇｉ３０５へ送信する（ステップＳ７１０）。
【００６９】
すると、レイヤ生成ｃｇｉ３０５は、クライアントＰＣ１０２から受信した情報に基づいて、前述の吹き出しオブジェクト、送信対象者一覧表およびメッセージダイアログ等のレイヤ毎の画像データを生成するレイヤ生成処理を実行する（ステップＳ７１１）。なお、ステップＳ７１１の処理の際、レイヤ生成ｃｇｉ３０５は、選択医療機関テーブル４０８、送信対象者テーブル４０９および選択送信対象者テーブル４１０の生成／更新も同時に行う。
【００７０】
そして、レイヤ生成ｃｇｉ３０５は、生成した各レイヤをｗｅｂサーバプログラム３０２およびインターネット１０６を介してクライアントＰＣ１０２の入出力制御部２０３に送信する（ステップＳ７１２）。なお、レイヤ生成処理の詳細については、図１０〜図１７にて後述する。
【００７１】
入出力制御部２０３はレイヤ生成ｃｇｉ３０５で生成された、各レイヤの画像データを受信すると、受信した各レイヤを表示制御部２０４のレイヤ情報処理部２０７へ出力する。すると、レイヤ情報処理部２０７は、各レイヤを医療機関地図の上の所定の位置に重ねた画面を表示部２０５に表示させる（ステップＳ７１３）。なお、ステップＳ７１３の処理でクライアントＰＣ１０２の表示部２０５に表示される各画面の詳細、特に画面の遷移については、図１０〜図１５にて後述する。
【００７２】
表示部２０５にメッセージを入力するための画面（図１５にて詳述）が表示されているとき、ユーザ１０３が操作部２０６から所定のテキスト情報を入力したとする。すると、入出力制御部２０３は、送信対象者に対するメッセージであるテキスト情報をインターネット１０６およびｗｅｂサーバプログラム３０２を介してメッセージ登録ｃｇｉ３０７に送信する（ステップＳ７１４）。
【００７３】
メッセージ登録ｃｇｉ３０７は、クライアントＰＣ１０２からのアクセスに呼応して、レイヤ生成処理で生成された選択送信者テーブルに格納されている「ユーザＩＤ」、クライアントＰＣ１０２から送信されたユーザ１０３のユーザＩＤおよびテキスト情報に基づいて、選択送信テーブルに格納されている「ユーザＩＤ」を持つ医師が閲覧可能なメッセージが書き込まれたメッセージテーブル３１１を生成する（ステップＳ７１５）。
【００７４】
次に、クライアントＰＣ１０２の表示部２０５に表示されるログイン画面および医療機関地図画面について図８および図９を参照して説明する。
【００７５】
［８．  ログイン画面］
図８は、ステップＳ７０３の処理で生成されるログイン画面ｈｔｍｌ文書で表される画面、すなわちステップＳ７０５の処理で表示部２０５に表示されるログイン画面を示す図である。
【００７６】
ログイン画面は、操作部２０６の一例であるキーボードで入力した文字列を表示するユーザＩＤ入力領域を備えている。このユーザＩＤ入力領域に入力される文字列が、ステップＳ７０６の処理にてクライアントＰＣ１０２からサービス提供サーバ１０４の地図生成ｃｇｉ３０４へ送信されるユーザＩＤに相当する。
［９．  医療機関地図画面］
図９は、ステップＳ７０７の処理で生成される医療機関地図ｈｔｍｌ文書で表される画面、すなわちステップＳ７０９の処理で表示部２０５に表示される医療機関地図画面を示す図である。
【００７７】
医療機関地図画面９０２は、おもに、医療機関地図９０３と、メッセージダイアログボタン９０４とから構成されている。
【００７８】
医療機関地図上の「☆」（星）で示される「星」アイコン９０５は、クライアントＰＣ１０２のユーザ１０３が所属する医療機関の位置を示すものである。
医療機関地図上にある「●」（黒丸）で示される「黒丸」アイコン９０６は、サービス提供サーバ１０４に登録された医師（以下、「登録医師」という）が所属する医療機関の位置を示すものである。
医療機関地図上にある「○」（白丸）で示される「白丸」アイコン９０７は、サービス提供サーバ１０４に登録されていない医師（以下、「非登録医師」という）が所属する医療機関の位置を示すものである。
【００７９】
メッセージダイアログボタン９０４は、マウスカーソル９０４でクリックされると、メッセージダイアログを当該医療機関地図画面９０２上に表示するためのメッセージダイアログ要求情報を入出力制御部２０３からインターネット１０６およびｗｅｂサーバプログラム３０２を介してデータ受信部４０２へ送信する。なお、メッセージダイアログが表示された、送信対象者にメッセージを送信するための画面については図１５にて後述する。
【００８０】
［１０．  レイヤ生成処理に伴う画面遷移］
次に、図１０〜図１５を参照してステップＳ７１１のレイヤ生成処理中において、クライアントＰＣ１０２の表示部２０５に表示される画面の遷移について説明する。
図１０は、レイヤ生成処理中にクライアントＰＣ１０２の表示部２０５に表示される、メッセージを送信する送信対象者を選択するための画面の遷移を示す状態遷移図である。
【００８１】
図７に示すステップＳ７１０の完了直後で、図１０に示す医療機関画面がクライアントＰＣ１０２の表示部２０５に表示されているものとする（Ｐ１００１）。
【００８２】
まず、ユーザ１０３は操作部２０６の一例であるマウスを操作してマウスカーソル９０８を登録ユーザが所属する医療機関を示す「黒丸」アイコン９０６上に移動させる（Ｓ１００２）。すると、図１１に示すような、「黒丸」アイコン９０６に対応する医療機関に所属する医師を視覚的に示す吹き出しオブジェクト１１０２が医療機関地図９０３の上に表示された画面がクライアントＰＣ１０２の表示部２０５に表示される（吹き出しオブジェクト表示状態Ｐ１００３、図１１）。ただし、ユーザ１０３がマウスを操作して「黒丸」アイコン９０６上にあるマウスカーソル９０８を移動させると（ステップＳ１００４）、吹き出しオブジェクト１１０２は消滅し、表示部２０５に表示される画面は状態Ｐ１００１、すなわち医療機関地図表示画面９０２に戻る。
【００８３】
吹き出しオブジェクト表示状態Ｐ１００３で、ユーザ１０３によってマウスがクリックされると（ステップＳ１００５）、吹き出しオブジェクトが医療機関地図画面上に固定された画面がクライアントＰＣ１０２の表示部２０５に表示される（吹き出しオブジェクト固定状態Ｐ１００６、図１２）。吹き出しオブジェクト固定状態Ｐ１００６において吹き出しオブジェクト１１０２を画面から消去する場合、ユーザ１０３はマウスカーソル９０８で吹き出しオブジェクト１１０２の「×」（バツ）で示される「バツ」ボタン１１０３をクリックする（ステップＳ１００７）。すると、表示部２０５に表示される画面は状態Ｐ１００１、すなわち医療機関地図表示画面９０２に戻る。
【００８４】
ユーザ１０３が、吹き出しオブジェクト固定状態Ｐ１００６で吹き出しオブジェクト１１０２内にある送信対象者選択チェックボックス１１０４に対してクリックを行う（ステップＳ１００８）。すると、クリックした送信対象者選択チェックボックス１１０４にチェック印が付されるとともに、当該チェック印に対応する医師の名前が記載された送信対象者一覧表１３０２を、吹き出しオブジェクト固定状態Ｐ１００６で表される画面上に表示した画面が表示部２０５に表示される（送信対象者選択状態Ｐ１００９ａ、図１３）。送信対象者選択状態Ｐ１００９ａにおいて現在選択中の医療機関に所属する医師を選択する場合、ユーザ１０３は選択したい医師に対応する送信対象者選択チェックボックス１１０４をクリックする（ステップＳ１０１０）。送信対象者選択状態Ｐ１００９において、現在選択中の医師を選択から除外したい場合、ユーザ１０３は除外したい医師に対応する、送信対象者一覧表１３０２のチェックボックスをクリックし、さらに削除ボタンをクリックする（ステップＳ１０１１）。
【００８５】
送信対象者選択状態Ｐ１００９ａにおいて現在選択中以外の医療機関に所属する医師を選択したい場合、ユーザ１０３は吹き出しオブジェクト１１０２の×（バツ）ボタン１１０３をクリックする（ステップＳ１０１２）。すると、表示部２０５に表示されている画面は、送信対象者選択状態Ｐ１００９ａから状態Ｐ１００１に遷移する。ここで、ユーザ１０３は、マウスカーソル９０８で選択したい医師の所属する医療機関（「黒丸」アイコン９０６）をクリックすると、表示部２０５に表示されている画面は、状態Ｐ１００１でユーザ１０３がクリックした医療機関に対応する吹き出しオブジェクト１１０２が表示される。表示されている吹き出しオブジェクト１１０２から送信対象者を選択（送信対象者選択チェックボックス１１０４をクリック）すると、表示されている画面は、例えば図１４に示す送信対象者選択状態Ｐ１００９ｂで表される画面に遷移する。
【００８６】
送信対象者選択状態Ｐ１００９ｂでメッセージを送信する医師の選択が完了した場合、ユーザ１０３はメッセージダイアログボタン９０４をクリックする（ステップＳ１０１３）。すると、表示部２０５には、送信対象者選択状態Ｐ１００９ｂで表される画面上にメッセージダイアログ１５０２を表示した画面が表示される（メッセージ送信状態Ｐ１０１４、図１５）。
【００８７】
ユーザ１０３は、メッセージダイアログ１５０２の中に、先のステップＳ１０１０の処理にて選択した医師に送りたいメッセージ（テキスト情報）を入力し、送信ボタンをマウスでクリックする（ステップＳ１０１５）。すると、当該メッセージがサービス提供サーバ１０４に送信され、表示部２０５に表示されている画面が、メッセージ送信状態Ｐ１０１４から状態Ｐ１００１に遷移する。このステップＳ１０１５の処理が、図７のＳ７１４のクライアントＰＣ１０２からサービス提供サーバ１０４へメッセージを送信する処理に相当する。
【００８８】
次に、図１０の状態Ｐ１００１と吹き出しオブジェクト表示状態Ｐ１００３の間での画面遷移の際にサービス提供サーバ１０４の選択医療機関テーブル４０８の生成／更新について説明する。
【００８９】
（ケース１：Ｐ１００１→Ｐ１００３、最初の動作）
まず、マウスカーソル９０８が医療機関を示す「黒丸」アイコン９０６上に乗せられ、クライアントＰＣ１０２の表示部２０５に表示される画面が吹き出しオブジェクト表示状態Ｐ１００３になるとする。このとき、サービス提供サーバ１０４のデータ抽出部４０４は、マウスカーソル９０８の位置が示す医療機関に該当する医療機関ＩＤを選択医療機関テーブル４０８の「医療機関ＩＤ」フィールドに追記する。そして、データ抽出部４０４は、選択医療機関テーブル４０８の「医療機関ＩＤ」を追記したのと同じレコードの「現在選択中」フィールドに‘１’を書き込む。さらに、データ抽出部４０４は、当該レコードの「一時ファイル名」フィールドに取得した医療機関ＩＤに対応する送信対象者テーブル４０９を示すファイル名を書き込む。
この時、選択医療機関テーブル４０８には、現在マウスカーソルが位置している医療機関に該当するレコードのみ、つまり１レコードだけが記録されており、そのレコードの「現在選択中」フィールドは「１」である。
【００９０】
（ケース２：Ｐ１００３→Ｐ１００１）
クライアントＰＣ１０２の表示部２０５に表示される画面が、吹き出しオブジェクト表示状態Ｐ１００３から状態Ｐ１００１に遷移したとする。このとき、サービス提供サーバ１０４のデータ抽出部４０４は、選択医療機関テーブル４０８の「現在選択中」フィールドに‘０’を書き込む。
この時、選択医療機関テーブル４０８のすべてのレコードの「現在選択中」フィールドは、すべて「０」である。
【００９１】
（ケース３：Ｐ１００１→Ｐ１００３、二回目以降の動作）
前回マウスカーソル９０８を乗せた「黒丸」アイコン９０６とは別の「黒丸」アイコン９０６にマウスカーソル９０８を乗せた、すなわち前回選択した医療機関とは別の医療機関を選択したとする。このとき、サービス提供サーバ１０４のデータ抽出部４０４は、マウスカーソル９０８の位置が示す医療機関に該当する医療機関ＩＤを選択医療機関テーブル４０８の「医療機関ＩＤ」フィールドに追記する。そして、データ抽出部４０４は、選択医療機関テーブル４０８の「医療機関ＩＤ」を追記したのと同じレコードの「現在選択中」フィールドに‘１’を書き込む。さらに、データ抽出部４０４は、当該レコードの「一時ファイル名」フィールドに取得した医療機関ＩＤに対応する送信対象者テーブル４０９を示すファイル名を書き込む。
この時、選択医療機関テーブル４０８に存在するレコードのうち、現在マウスカーソルが位置している医療機関に該当するレコードの「現在選択中」フィールドだけが「１」であり、その他のレコードの「現在選択中」フィールドは、すべて「０」である。
【００９２】
以上のように、一度選択された医療機関についてデータ抽出部４０４が生成した情報は、選択医療機関テーブル４０８に蓄積されてゆく。
【００９３】
［１０．  吹き出しオブジェクト生成処理］
次に、サービス提供サーバ１０４で実行される吹き出しオブジェクト１１０２を生成する処理（以下、「吹き出しオブジェクト生成処理」という）について図１６を参照して説明する。
図１６は、吹き出しオブジェクト生成処理の動作の流れを示すフローチャートである。吹き出しオブジェクト生成処理とは、図１０に示すＰ１００１とＰ１００３間の状態遷移の際にサービス提供サーバ１０４のレイヤ生成ｃｇｉ３０５で実行される処理のことである。
【００９４】
まず、データ受信部４０２は、クライアントＰＣ１０２から送信される前述のマウスカーソル位置情報を受信すると（ステップＳ１６０１）、受信したマウスカーソル位置情報をマウスカーソル情報変換部４０３に出力する。マウスカーソル情報変換部４０３は、データ受信部４０２から入力されたマウスカーソル位置情報に基づいて、現在クライアントＰＣ１０２の表示部２０５に表示中の医療機関地図上にあるマウスカーソルが示す位置（緯度・経度）を算出する（ステップＳ１６０２）。そして、マウスカーソル情報変換部４０３は、算出した緯度・経度をデータ抽出部４０４に出力する。
【００９５】
データ抽出部４０４は、入力された緯度・経度で医療機関テーブル３０８の「緯度・経度」フィールドを検索し、入力された緯度・経度と一致するレコードが当該医療機関テーブル３０８にあるか否かを確認する（ステップＳ１６０３）。一致するレコードがないならば（ステップＳ１６０３のＮＯ）、ステップＳ１６０２の処理に戻る。
【００９６】
一致するレコードがあるならば（ステップＳ１６０３のＹＥＳ）、データ抽出部４０４は、該当するレコードの「医療機関ＩＤ」を医療機関テーブル３０８から抽出する（ステップＳ１６０４）。そして、データ抽出部４０４は、抽出した医療機関ＩＤでユーザテーブル３０９を検索し、当該医療機関ＩＤと一致するレコードに書き込まれている「ユーザＩＤ」、「名前」および「写真保存先」を抽出する（ステップＳ１６０５）。
【００９７】
ここで、データ抽出部４０４は、ステップＳ１６０４の処理にて医療機関テーブル３０８から抽出した医療機関ＩＤに基づいて前述の選択医療機関テーブル４０８を生成し、生成した選択医療機関テーブル４０８を一時ファイルディレクトリ３１０に記憶する。なお、この段階において、医療機関テーブル３０８は、「医療機関ＩＤ」フィールドにのみサービス提供サーバ１０４に登録されている各医療機関の医療機関ＩＤを書き込まれた状態となっている。
【００９８】
そして、データ抽出部４０４は、生成した選択医療機関テーブル４０８においてステップＳ１６０４の処理で抽出した「医療機関ＩＤ」と一致するレコードの「現在選択中」に‘１’を書き込む。そして、送信対象者テーブル４０９の名前をランダムに決定して、その名前を当該レコードの「一時ファイル名」に書き込む（ステップＳ１６０６）。
【００９９】
さらに、データ抽出部４０４は、抽出した「ユーザＩＤ」、「名前」および「写真保存先」からなる送信対象者テーブル４０９を生成し、生成した送信対象者テーブル４０９にステップＳ１６０６の処理で決定された名前をつけて一時ファイルディレクトリ３１０に記憶する（ステップＳ１６０７）。
【０１００】
吹き出しオブジェクト生成部４０５は、一時ファイルディレクトリ３１０に記憶された送信対象者テーブル４０９の「写真保存先」に記憶された顔写真を画像データディレクトリ３０６から取得し、当該送信対象者テーブル４０９に基づいて、名前とその名前が示す医師の顔写真を含む吹き出しオブジェクト１１０２を生成する（ステップＳ１６０８）。吹き出しオブジェクト生成部４０５は、生成した吹き出しオブジェクト１１０２をｗｅｂサーバプログラム３０２に出力する。
【０１０１】
すると、ｗｅｂサーバプログラム３０２は、入力された吹き出しオブジェクト１１０２をインターネット１０６を介してクライアントＰＣ１０２のｗｅｂブラウザ２０２へ送信する（ステップＳ１６０９）。
［１１．  送信対象者一覧表生成処理］
次に、サービス提供サーバ１０４で実行される送信対象者一覧表１３０２を生成する処理（以下、「送信対象者一覧表生成処理」という）について図１７を参照して説明する。
図１７は、送信対象者一覧表生成処理の動作の流れを示すフローチャートである。送信対象者一覧表生成処理とは、図１０に示すステップＳ１００８、ステップＳ１０１０およびステップＳ１０１１の処理をクライアントＰＣ１０２側で行った際にサービス提供サーバ１０４のレイヤ生成ｃｇｉ３０５で実行される処理のことである。
【０１０２】
まず、クライアントＰＣ１０２の入出力制御部２０３から送信される送信対象者変更情報を受信すると（ステップＳ１７０１）、データ受信部４０２は受信した送信対象者変更情報を選択情報判定部４１１に出力する。
【０１０３】
選択情報判定部４１１は、入力された送信対象者変更情報が、送信対象者追加に関する情報なのか送信対象者削除に関する情報なのかを判定する（ステップＳ１７０２）。
【０１０４】
送信対象者変更情報が送信対象者追加に関する情報ならば（ステップＳ１７０２のＹＥＳ）、選択情報判定部４１１は、送信対象者変更情報に含まれる、追加する送信対象者のユーザＩＤで送信対象者テーブル４０９を検索し、ヒットしたレコードの「リスト追記」に‘１’を書き込む（ステップＳ１７０３）。
【０１０５】
そして、選択情報判定部４１１は、「リスト追記」に‘１’を書き込んだレコードの「ユーザＩＤ」および「名前」を選択送信対象者テーブル４１０に追記する（ステップＳ１７０４）。
【０１０６】
吹き出しオブジェクト生成部４０５は、ステップＳ１７０３の処理における送信対象者テーブル４０９の更新をトリガにして、当該送信対象者テーブル４０９の内容を反映した吹き出しオブジェクト１１０２を生成する（ステップＳ１７０５）。この噴出しオブジェクト１１０２は、送信対象者テーブル４０９の「リスト追加」フィールドが‘１’となったレコードの「ユーザＩＤ」に対応する、吹き出しオブジェクト１１０２の送信対象者選択チェックボックス１１０４にチェックが付された状態を反映している。
【０１０７】
そして、送信対象者一覧表生成部４０６は、選択送信対象者テーブル４１０に基づいて送信対象者一覧表１３０２を生成し（ステップＳ１７０６）、処理を終了する（ステップＳ１７０７）。なお、ステップＳ１７０５の処理で生成された吹き出しオブジェクト１１０２およびステップＳ１７０６の処理で生成された送信対象者一覧表１３０２は、ｗｅｂサーバプログラム３０２に入力され、インターネット１０６を介してクライアントＰＣ１０２のｗｅｂブラウザ２０２へ送信される。
【０１０８】
一方、送信対象者変更情報が送信対象者削除に関する情報ならば（ステップＳ１７０２のＮＯ）、選択情報判定部４１１は、送信対象者変更情報に含まれる、削除する送信対象者のユーザＩＤで送信対象者テーブル４０９を検索し、ヒットしたレコードの「リスト追記」に‘０’を書き込む（ステップＳ１７０８）。
【０１０９】
そして、選択情報判定部４１１は、送信対象者テーブル４０９の「リスト追記」に‘０’を書き込んだレコードの「ユーザＩＤ」と一致するレコードを選択送信対象者テーブル４１０から削除する（ステップＳ１７０９）。
【０１１０】
この後、吹き出しオブジェクト生成部４０５は、ステップＳ１７０４の後と同様に、ステップＳ１７０８の処理における送信対象者テーブル４０８の更新をトリガに、当該送信対象者テーブル４０９の内容を反映した吹き出しオブジェクト１１０２を生成する（ステップＳ１７０５）。この噴出しオブジェクト１１０２は、送信対象者テーブル４０９の「リスト追加」フィールドが‘０’となったレコードの「ユーザＩＤ」に対応する、吹き出しオブジェクト１１０２の送信者対象者選択チェックボックス１１０４からチェック印を消した状態を反映している。そして、送信対象者一覧表生成部４０６は、選択送信対象者テーブル４１０に基づいて送信対象者一覧表１３０２を生成し（ステップＳ１７０６）、処理を終了する（ステップＳ１７０７）。
【０１１１】
以上、上述した本発明の実施形態において、医療機関地図および吹き出しオブジェクトを利用して、メッセージを送信する送信対象者を選択するようにした。しかし、これに限られるものではなく、例えばＳＮＳの機能である日記公開等行う際に、当該日記の閲覧が可能な人の選択なども、医療機関地図および吹き出しオブジェクトから行えるようにできることはいうまでもない。
【０１１２】
［１２．  他の実施形態］
また、上述した本発明の実施形態においては、サービス提供サーバ１０４にメッセージテーブル３１１を生成するようにしたが、このメッセージテーブル３１１（図３を参照）の代替として図１８に示すようなメッセージテーブル１８０２を生成するようにしてもよい。これにより、メッセージ送信者であるユーザ１０３は、医療機関地図および吹き出しオブジェクトを利用して送信対象者がメッセージを閲覧したか否かを確認（以下、「メッセージ閲覧確認」という）できるようになる。
【０１１３】
このメッセージ閲覧確認について、図１８〜図２０を参照して説明する。
図１８は、メッセージテーブル１８０２を示す図である。
メッセージテーブル１８０２は、「送信者ユーザＩＤ」フィールドと、「送信対象者ユーザＩＤ」フィールドと、「メッセージ」フィールドと、「メッセージＩＤ」フィールドと、「開封フラグ」フィールドよりなる。
【０１１４】
「送信者ユーザＩＤ」フィールドには、ログイン画面よりクライアントＰＣ１０２のユーザ１０３が入力したユーザＩＤが書き込まれる。
「送信対象者ユーザＩＤ」には、選択送信対象者テーブル４１０に書き込まれている「ユーザＩＤ」が書き込まれる。
「メッセージ」フィールドには、クライアントＰＣ１０２の表示部２０５に表示されたメッセージダイアログ１５０２に入力したテキスト情報が書き込まれる。
「メッセージＩＤ」フィールドには、メッセージダイアログ１５０２に書き込まれたメッセージを識別するための識別情報が書き込まれている。
「開封フラグ」フィールドには、「送信対象者ユーザＩＤ」フィールドに書き込まれた各ユーザＩＤに対応するメッセージが、当該各ユーザＩＤに対応する各送信対象者によって閲覧されたか否かを識別する情報が書き込まれる。具体的には、閲覧された場合には‘１’が「開封フラグ」フィールドに書き込まれており、閲覧されていない場合には‘０’が「開封フラグ」フィールドに書き込まれている。なお、本例では、すでに「開封フラグ」フィールドに‘１’あるいは‘０’が書き込まれているものとする。
【０１１５】
次に、医療機関地図および吹き出しオブジェクトを利用したメッセージ閲覧確認について、具体的に説明する。
【０１１６】
図１９は、クライアントＰＣ１０２の表示部２０５に表示される送信メッセージ一覧表示画面である。
この送信メッセージ一覧表示画面１９０２は、メッセージ送信者であるクライアントＰＣ１０２のユーザ１０３の操作部２０６に対する操作に基づいて、所定の送信対象者のユーザＩＤをサービス提供サーバ１０４に送信するための画面である。
【０１１７】
この送信メッセージ一覧表示画面１９０２は、メッセージテーブル１８０２を、「送信者ユーザＩＤ」フィールドで絞り込み検索することで得られる。
【０１１８】
ユーザは、送信メッセージ一覧表示画面１９０２が表示部２０５に表示されている状態において、操作部２０６であるポインティングデバイス等で、メッセージの件名をクリックすると、クリックしたメッセージの件名に対応するメッセージのメッセージＩＤがクライアントＰＣからサービス提供サーバ１０４に送信される。すると、サービス提供サーバ１０４は、受信したメッセージＩＤでメッセージテーブル１８０１の「メッセージＩＤ」フィールドを検索し、ヒットしたレコードの「開封フラグ」を確認を行う。
【０１１９】
そして、ヒットしたレコードの内「開封フラグ」が‘１’のレコードの「送信対象者ＩＤ」に対応する医師、すなわちメッセージを閲覧した医師が所属する医療機関（以下、「メッセージ閲覧医療機関」という）を医療機関テーブル３０８およびユーザテーブル３０９を参照して検索する。それと同時に、ヒットしたレコード内の「開封フラグ」が‘０’のレコードの「送信対象者ＩＤ」を利用して、送信対象者となっているがメッセージを閲覧していない医師しかいない医療機関（以下、「メッセージ未閲覧医療機関」という）を検索する。
【０１２０】
サービス提供サーバ１０４は、メッセージ閲覧医療機関とメッセージ未閲覧医療機関とが区別された医療機関地図を生成し、この医療機関地図をクライアントＰＣに送信する。すると、クライアントＰＣの表示部には、図２０に示すような医療機関地図２００２が表示される。「■」（黒四角）で示される黒四角アイコン２００３はメッセージ閲覧医療機関を表すアイコンであり、「□」（白四角）で示される白四角アイコン２００４はメッセージ未閲覧医療機関を表すアイコンである。なお、医療機関地図は、サービス提供サーバ１０４によって、すべてのメッセージ送信対象者が所属する医療機関が含まれる縮尺で生成される。
【０１２１】
ここで、ユーザ１０３がポインティングデバイス等で、黒四角アイコン２００３をクリックすると、サービス提供サーバ１０４では上記した検索結果に基づいて、メッセージを閲覧した医師としていない医師を区別した吹き出しオブジェクト２００５が生成される。そして、現在クライアントＰＣ１０２の表示部２０５に表示されている医療機関地図２００２上の所定の位置に吹き出しオブジェクト２００５が表示される。吹き出しオブジェクトに表示される「★」（黒星）で示される黒星アイコン２００６はメッセージを閲覧した医師を表すアイコンであり、「☆」（白星）で示される白星アイコン２００７はメッセージを閲覧した医師を表すアイコンである。
【０１２２】
［１２．  効果］
以上説明したように、本発明は、地図上の医療機関に位置でクリックを行うと、当該医療機関に所属する医師を含む吹き出しオブジェクトを地図上に表示し、この吹き出しオブジェクトからメッセージを送信する医師を選択できるようにした。これにより、ユーザは、クリックという単純な操作だけで、メッセージを送信する医師を決定することができる。
【０１２３】
さらに、吹き出しオブジェクトには、医師の顔写真が含まれているので、ユーザはメッセージを送信する相手を視覚的に確認しながら、メッセージを送信する相手を選択することができる。これにより、メッセージを送信する相手を間違いにくくする、という効果を奏する。
【０１２４】
以上、本発明の実施形態の例について説明したが、本発明は上記実施形態例に限定されるものではなく、特許請求の範囲に記載した本発明の要旨を逸脱しない限りにおいて、他の変形例、応用例を含むことはいうまでもない。
【０１２５】
なお、上述した実施形態においては、メッセージの送信対象者を医師としたが、メッセージの送信対象者は医師に限られるものではない。
【図面の簡単な説明】
【０１２６】
【図１】本発明の一実施の形態による、地図生成システムの機能ブロック図である。
【図２】クライアントＰＣの機能ブロック図である。
【図３】サービス提供サーバの機能ブロック図である。
【図４】レイヤ生成ｃｇｉを中心とする機能ブロック図である。
【図５】サービス提供サーバが予め備える各テーブルのフィールドを示す図である。
【図６】サービス提供サーバで生成される各テーブルのフィールドを示す図である。
【図７】クライアントＰＣとサービス提供サーバとの間で行われる動作を示すシーケンス図である。
【図８】クライアントＰＣの表示部に表示されるログイン画面を示す図である。
【図９】クライアントＰＣの表示部に表示される医療機関地図画面を示す図である。
【図１０】クライアントＰＣの表示部に表示される各画面の遷移を示す繊維図である。
【図１１】クライアントＰＣの表示部に表示される、吹き出しオブジェクト表示状態を示す画面を示す図である。
【図１２】クライアントＰＣの表示部に表示される、吹き出しオブジェクト固定状態を示す画面を示す図である。
【図１３】クライアントＰＣの表示部に表示される、送信対象者選択状態を示す画面を示す図である。
【図１４】クライアントＰＣの表示部に表示される、送信対象者選択状態を示す画面を示す図である。
【図１５】クライアントＰＣの表示部に表示される、メッセージ送信状態を示す画面を示す図である。
【図１６】吹き出しオブジェクト生成処理の動作の流れを示すフローチャートである。
【図１７】送信対象者生成処理の動作の流れを示すフローチャートである。
【図１８】メッセージテーブルを示す図である。
【図１９】送信メッセージ一覧表示画面を示す図である。
【図２０】医療機関地図および吹き出しオブジェクトを示す図である。
【符号の説明】
【０１２７】
１０１…サービス提供システム、１０２…クライアントＰＣ、１０３…ユーザ、１０４…サービス提供サーバ、１０５…地図サーバ、１０６…インターネット、２０２…ｗｅｂブラウザ、２０３…入出力制御部、２０４…表示制御部、２０５…表示部、２０６…操作部、２０７…レイヤ情報処理部、３０２…ｗｅｂサーバプログラム、３０３…ログイン画面生成ｃｇｉ、３０４…地図生成ｃｇｉ、３０５…レイヤ生成ｃｇｉ、３０６…画像データディレクトリ、３０７…メッセージ登録ｃｇｉ、３０８…医療機関テーブル、３０９…ユーザテーブル、３１０…一時ファイルディレクトリ、３１１…メッセージテーブル、４０２…データ受信部、４０３…マウスカーソル情報変換部、４０４…データ抽出部、４０５…吹き出しオブジェクト生成部、４０６…送信対象者一覧表生成部、４０７…メッセージダイアログ生成部、４０８…選択医療機関テーブル、４０９…送信対象者テーブル、４１０…選択送信対象者テーブル、４１１…選択情報判定部、８０２…ログイン画面、８０３…ユーザＩＤ入力領域、９０２…医療機関地図画面、９０３…医療機関地図、９０４…メッセージダイアログボタン、９０５…「星」アイコン、９０６…「黒丸」アイコン、９０７…「白丸」アイコン、９０８…マウスカーソル、Ｐ１００３…吹き出しオブジェクト表示状態、Ｐ１００６…吹き出しオブジェクト固定状態、Ｐ１００９…送信対象者選択状態、Ｐ１０１４…メッセージ送信状態、１１０２…吹き出しオブジェクト、１１０３…「バツ」ボタン、１１０４…送信対象者選択チェックボックス、１３０２…送信対象者一覧表、１５０２…メッセージダイアログ、１８０２…メッセージテーブル、１９０２…送信対象者一覧表示画面、２００２…医療機関地図
【図１】
2010067224.tif 000003
【図２】
2010067224.tif 000004
【図３】
2010067224.tif 000005
【図４】
2010067224.tif 000006
【図５】
2010067224.tif 000007
【図６】
2010067224.tif 000008
【図７】
2010067224.tif 000009
【図８】
2010067224.tif 000010
【図９】
2010067224.tif 000011
【図１０】
2010067224.tif 000012
【図１１】
2010067224.tif 000013
【図１２】
2010067224.tif 000014
【図１３】
2010067224.tif 000015
【図１４】
2010067224.tif 000016
【図１５】
2010067224.tif 000017
【図１６】
2010067224.tif 000018
【図１７】
2010067224.tif 000019
【図１８】
2010067224.tif 000020
【図１９】
2010067224.tif 000021
【図２０】
2010067224.tif 000022