(57)【要約】【課題】一実施形態は、旅程計画やスポットに訪問済みを示す情報を設定する際の煩雑さを抑制する。【解決手段】一実施形態に係る設定制御プログラムは、１以上のスポット情報を含む第１の旅程計画の属性について訪問済みへの変更指示を受け付けると、第１の旅程計画の属性を訪問済みに設定するとともに、第１の旅程計画に含まれる各スポット情報の属性が訪問済みとなるように設定を更新する処理を実行し、属性が未訪問の第２の旅行計画について、処理により第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、第２の旅行計画の属性を訪問済みに設定しない、処理をコンピュータに実行させる。【選択図】図１１
2018018287.tif 000002
【特許請求の範囲】
【請求項１】
１以上のスポット情報を含む第１の旅程計画の属性について訪問済みへの変更指示を受け付けると、前記第１の旅程計画の属性を訪問済みに設定するとともに、前記第１の旅程計画に含まれる各スポット情報の属性が訪問済みとなるように設定を更新する更新処理を実行し、
属性が未訪問の第２の旅行計画について、前記更新処理に応じて前記第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、前記第２の旅行計画の属性を訪問済みに設定しない、
処理をコンピュータに実行させることを特徴とする設定制御プログラム。
【請求項２】
第１の旅程計画に含まれる特定のスポット情報の属性を訪問済みに変更する指示を受け付けると、前記特定のスポット情報の属性を訪問済みに設定し、
前記特定のスポット情報の属性が訪問済みに設定されたことに応じて、前記第１の旅程計画に含まれる全てのスポット情報の属性が訪問済みとなった場合、前記第１の旅程計画の属性を訪問済みに設定し、
前記特定のスポット情報の属性が訪問済みに設定されたことに応じて、前記特定のスポット情報を含む第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、前記第２の旅行計画の属性を訪問済みに設定しない、
処理をコンピュータに実行させることを特徴とする設定制御プログラム。
【請求項３】
前記第１の旅程計画及び前記第２の旅程計画を含む複数の旅程計画の一覧を表示する指示を受け付けた場合、前記複数の旅程計画のうちで属性が訪問済みに設定されていない旅程計画を、前記複数の旅程計画のうちで属性が訪問済みに設定されている旅程計画よりも優先して表示させる、
ことを特徴とする、請求項１又は２に記載の設定制御プログラム。
【請求項４】
複数のスポット情報の一覧を表示する指示を受け付けた場合、前記複数のスポット情報のうちで属性が訪問済みに設定されていないスポット情報を、前記複数のスポット情報のうちで属性が訪問済みに設定されているスポット情報よりも優先して表示させる、
ことを特徴とする、請求項１又は２に記載の設定制御プログラム。
【請求項５】
１以上のスポット情報を含む第１の旅程計画の属性について訪問済みへの変更指示を受け付けると、前記第１の旅程計画の属性を訪問済みに設定するとともに、前記第１の旅程計画に含まれる各スポット情報の属性が訪問済みとなるように設定を更新する更新処理を実行し、
属性が未訪問の第２の旅行計画について、前記更新処理に応じて前記第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、前記第２の旅行計画の属性を訪問済みに設定しない、
処理をコンピュータが実行することを特徴とする設定制御方法。
【請求項６】
１以上のスポット情報を含む第１の旅程計画の属性について訪問済みへの変更指示を受け付けると、前記第１の旅程計画の属性を訪問済みに設定するとともに、前記第１の旅程計画に含まれる各スポット情報の属性が訪問済みとなるように設定を更新する更新処理を実行し、
属性が未訪問の第２の旅行計画について、前記更新処理に応じて前記第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、前記第２の旅行計画の属性を訪問済みに設定しない、
処理を実行する機能を有する制御部を備えることを特徴とする設定制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、設定制御プログラム、設定制御方法、及び設定制御装置に関する。
【背景技術】
【０００２】
近年、旅程計画を作成してユーザに提供する技術が知られている。例えば、所定のエリアに存在する娯楽、スポーツ、文化等に関する複数のスポットの中から、ユーザに人気のあるスポットを選択し、選択したスポットを巡る旅程計画を生成することが行われている。そして、ユーザに生成された複数の旅程計画を提供することが行われている。また、旅程計画の作成や管理を支援するために利用できる技術も知られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−１９３４７８号公報
【特許文献２】特開２００７−２７１３６６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば、ユーザが、複数のスポットが登録された旅程計画の旅行に行った場合、旅程計画を管理するサービスを提供するソフトウェアなどにおいて、その旅程計画の旅行にユーザが訪問済みであることを示す属性が設定することがある。この場合に、ユーザは、旅程計画に含まれる複数のスポットのそれぞれについても、個別に訪問済みの属性を設定する作業が発生し、煩雑になることがある。
【０００５】
１つの側面では、本発明は、旅程計画やスポットに訪問済みを示す情報を設定する際の煩雑さを抑制することのできる技術を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の一つの態様の設定制御プログラムは、１以上のスポット情報を含む第１の旅程計画の属性について訪問済みへの変更指示を受け付けると、第１の旅程計画の属性を訪問済みに設定するとともに、第１の旅程計画に含まれる各スポット情報の属性が訪問済みとなるように設定を更新する処理を実行し、属性が未訪問の第２の旅行計画について、処理により第２の旅行計画に含まれる全てのスポット情報の属性が訪問済みとなった場合であっても、第２の旅行計画の属性を訪問済みに設定しない、処理をコンピュータに実行させる。
【発明の効果】
【０００７】
旅程計画やスポットに訪問済みを示す情報を設定する際の煩雑さを抑制することができる。
【図面の簡単な説明】
【０００８】
【図１】実施形態に係るシステムの一例を示す図である。
【図２】実施形態に係るサーバのブロック構成を例示する図である。
【図３】実施形態に係る旅程計画の一覧が表示される旅程計画一覧画面を例示する図である。
【図４】或る旅程計画に含まれているスポットの一覧が表示されるスポット一覧画面を例示する図である。
【図５】旅程計画とスポットとの関係を例示する図である。
【図６】旅程計画マスタを例示する図である。
【図７】スポットマスタを例示する図である。
【図８】関連付情報を例示する図である。
【図９】実施形態に係る訪問済情報を例示する図である。
【図１０】実施形態に係るユーザと旅程計画とスポット情報と属性との関係を例示する図である。
【図１１】実施形態に係る旅程計画の訪問済みの設定制御処理の動作フローを例示する図である。
【図１２】実施形態に係るスポットの訪問済みの設定制御処理の動作フローを例示する図である。
【図１３】実施形態に係る表示処理の動作フローを例示する図である。
【図１４】実施形態に係るサーバを実現するためのコンピュータのハードウェア構成を例示する図である。
【発明を実施するための形態】
【０００９】
上述のように、旅程計画の作成や管理を支援するサービスを提供するソフトウェアがある。なお、このようなソフトウェアを、以下では支援ソフトウェアと呼ぶことがある。ユーザは、支援ソフトウェアを利用して、例えば、所定のエリアに存在する娯楽、スポーツ、文化等に関する複数のスポットの中からスポットの選択することで、選択されたスポットを巡る旅程計画を生成することができる。また、ユーザは、支援ソフトウェアを利用して、生成された旅程計画の提供を受けることができる。
【００１０】
また、支援ソフトウェアには、編集機能が備えられていてもよく、旅程計画にスポットを追加したり、削除したり、順路を変更したりなど、ユーザが支援ソフトウェアを利用して旅程計画をカスタマイズすることも可能である。更に、支援ソフトウェアに旅程計画を複数のユーザで共有する機能を持たせることで、複数人で１つの旅程計画を共有して編集したりすることもできる。
【００１１】
このような支援ソフトウェアでは、例えば、ユーザが自信の好みに沿った旅程計画を生成することができる。そのため、例えば、心霊スポット巡りが趣味なユーザが作成した心霊スポットを巡る旅程計画や、顔を嵌めて写真を撮るための看板を巡る旅程計画など、ユーザは自身の好みに応じたユニークな旅程計画を生成することができる。そして、別のユーザは、例えば、多くのユニークな旅程計画の中から自分好みの旅程計画を見つけて、それを利用したり、カスタマイズしたりすることができる。
【００１２】
また更に、支援ソフトウェアには、人工知能が搭載されていてもよく、人工知能で人と人とのつながりや、似た様な趣味を持つ人を解析したりすることで、ユーザは支援ソフトウェアを利用して自身の趣味に合った旅程計画のお勧めを受けたりすることもできる。
【００１３】
ここで、例えば、既に訪問したことのあるスポットや旅程よりも、未だ行ったことの無い旅程の方が旅程の計画の際にユーザにとって次の旅行先の候補となる可能性が高い。そのため、例えば、ユーザが複数のスポットが登録された或る旅程計画の旅行に行った場合に、支援ソフトウェアにおいて、その旅程計画の旅行にユーザが訪問済みであることを示す属性を設定することがある。しかしながら、この場合に、ユーザは、旅程計画に含まれる複数のスポットのそれぞれについても訪問しているため、スポット毎に個別に訪問済みの属性の設定を行う作業が発生することがあり、煩雑になることがある。そのため、旅程計画やスポットに訪問済みを示す情報を設定する際の煩雑さを抑制することのできる技術の提供が望まれている。
【００１４】
そこで、以下で述べる実施形態では、例えば、ユーザが支援ソフトウェアにおいて、旅程計画の属性を訪問済みに変更した際、支援ソフトウェアにおいて、その旅程計画に含まれる全てのスポットの属性もそれぞれ訪問済みに変更される。そのため、ユーザは旅程計画を訪問済みに設定した際に、その旅程計画に含まれるスポットも簡便に訪問済みに設定することができる。
【００１５】
また、一方で、例えば、支援ソフトウェアにおいて、或るスポットが、複数の旅程計画に登録されていることもある。そして、例えば、ユーザが或る旅程計画やスポットの属性を訪問済みに設定した場合に、属性がまだ未訪問に設定されている別の旅程計画に含まれる全てのスポットの属性が訪問済みになることもある。しかしながら、旅程計画は、例えば、上述のように、心霊スポットを巡る旅程計画や、顔を嵌めて写真を撮るための看板を巡る旅程計画など、たとえ同じスポットを含んでいたとしても、別の意図が付されていることもある。そのため、これらの２つの旅程計画は、別の旅程計画として取り扱うことが好ましい。即ち、例えば、ユーザが或る旅程計画やスポットの属性を訪問済みに設定した結果、属性がまだ未訪問に設定されている別の旅程計画に含まれる全てのスポットの属性が訪問済みになったとする。この場合にも、以下の実施形態では、別の旅程計画の属性は訪問済みに変更されない。そのため、実施形態によれば、旅程計画の訪問済みか否かの情報の管理の精度を向上させることができる。
【００１６】
以下、図面を参照しながら、本発明のいくつかの実施形態について詳細に説明する。なお、複数の図面において対応する要素には同一の符号を付す。
【００１７】
図１は、実施形態に係るシステム１の一例を示す図である。図１に示すように、システム１は、端末１０ａ，１０ｂ，１０ｃ，１０ｄ，１０ｅと、サーバ１００とを含む。
【００１８】
図１では、端末１０ａ〜１０ｅを示すが、このシステム１は、端末１０ａ〜１０ｅ以外にも、端末を有していても良い。以下の説明では、端末１０ａ〜１０ｅをまとめて、適宜、端末１０と表記する。端末１０およびサーバ１００は、ネットワーク５０を介して相互に接続される。端末１０は、ユーザが使用するスマートフォン、タブレット端末、ノートＰＣ（Personal Computer）等に対応する端末装置である。
【００１９】
サーバ１００は、例えば、旅程計画の作成や管理を支援する旅程計画支援サービスを端末１０に提供したり、旅程計画やスポットの訪問済みか否かの情報の設定を制御したりする設定制御装置の一例である。なお、旅程計画の作成や管理を支援する旅程計画支援サービスは、例えば、サーバ１００が、支援ソフトウェアを実行することで提供されてよい。例えば、サーバ１００は、旅程計画の情報を登録しており、旅程計画の情報に関するアクセスを端末１０から受け付けた場合には、旅程計画の情報を通知し、旅程計画の情報を端末１０が備える表示装置の表示画面に表示させてよい。なお、旅程計画は、例えば、上述のようにユーザが端末１０からサーバ１００に登録しても、或いは、サーバ１００の管理者がサーバ１００に登録してもよい。
【００２０】
図２は、実施形態に係るサーバ１００のブロック構成を例示する図である。サーバ１００は、例えば、制御部２００、記憶部２１０、及び通信部２２０を含んでいる。記憶部２１０は、例えば、支援ソフトウェア、設定制御プログラム、並びに、後述する旅程計画マスタ６００、スポットマスタ７００、関連付情報８００、及び訪問済情報９００などの情報を記憶している。なお、設定制御プログラムは、例えば、旅程計画やスポットへの訪問済みか否かの情報の設定を制御するためのプログラムであり、支援ソフトウェアに含まれていてもよい。通信部２２０は、制御部２００の指示に従って、ネットワーク５０を介して、端末１０との間でデータ通信を実行する。制御部２００は、後述する実施形態に係る処理において、通信部２２０を介して、端末１０とデータをやり取りする。これらの各部の詳細及び記憶部２１０に格納されている情報の詳細については後述する。
【００２１】
図３は、端末１０に表示される旅程計画一覧画面３００を例示する図である。図３に示すように、旅程計画一覧画面３００には、複数の旅程計画３０１が登録されている。なお、旅程計画３０１には、後述するように、例えば、複数のスポットと、その複数のスポットを巡る順番とが対応づけられている。旅程計画３０１は、例えば、ユーザが生成した旅程計画であってもよいし、サーバ１００により旅程計画支援サービスを提供する運営側が作成した旅程計画３０１であってもよい。図３の例では、ユーザが既に訪問した（行った）ことのある旅程計画３０１には、訪問済みの属性と対応する情報が表示されており、また、未訪問の旅程計画には未訪問の属性と対応する情報が表示されている。そして、訪問済みの旅程計画３０１よりも、ユーザがまだ行ったことのない未訪問の旅程計画３０１を優先して、上位に表示している。
【００２２】
図４は、或る旅程計画に含まれているスポット情報４０１を一覧表示したスポット一覧画面４００を例示する図である。なお、スポット情報４０１は、例えば、娯楽、スポーツ、文化等に関する地点（スポット）についての情報であってよく、観光名所、お店、レジャー施設などについての情報を含んでよい。スポット一覧画面４００において、スポット情報４０１は、対応する旅程計画の旅程の順序で表示されてもよいし、ユーザが既に訪問したことのあるスポット情報４０１よりも、ユーザがまだ訪問したことのないスポット情報４０１を優先して表示してもよい。図４の例では、訪問したことのあるスポットのスポット情報４０１には、訪問済みの属性と対応する情報が表示されており、また、未訪問のスポットのスポット情報４０１には未訪問の属性と対応する情報が表示されている。
【００２３】
図５は、旅程計画３０１と、スポット情報４０１との関係を例示する図である。図５に示すように、旅程計画３０１には、少なくとも１つのスポット情報４０１が登録されていてよく、複数のスポット情報４０１が登録されている場合には、スポット情報４０１を巡る順序も登録されている。図５では、旅程計画１〜旅程計画３の３つの旅程計画３０１が例示されており、１つのスポット情報４０１が複数の旅程計画３０１に登録されていてもよい。例えば、旅程計画２と旅程計画３に示すように、同じスポット情報４０１を含む異なる旅程計画３０１があってもよい。例えば、同じスポット情報４０１を含む旅程計画３０１であっても、巡る順番がことなっていたり、旅程計画３０１を生成したユーザが異なっていたりする場合には、異なる旅程計画３０１として扱うものとする。これは、例えば、或るユーザにとっては、旅程計画３０１で巡るスポットの順序として、巡り易い順序が好ましいことがある。一方で、例えば、映画やアニメーションなどで登場したスポットを、映画のシーンで登場した順序で巡りたいと望む別のユーザにとっては、巡り易さよりも、シーンで登場した順序で巡ることに意味が出てくる。別の例として、或るスポットをただ訪れたいと望むユーザもいれば、夕日が見える時刻や夜景が見える時刻など、特定の時間帯に訪れたいと望むユーザもいる。更には、心霊スポットを巡る旅程計画や、顔を嵌めて写真を撮るための看板を巡る旅程計画など、たとえ同じスポットを巡る旅程計画であっても、スポットを訪問する目的に別の意図が付されていることもある。そのため、いくつかの実施形態においては、生成された旅程計画は、例えば、同じスポットを同じ順序で巡る旅程計画であったとしても、異なる旅程計画は別の旅程計画として扱っている。
【００２４】
続いて、実施形態に係る訪問済みを示す情報の設定制御処理を説明する。まず、設定制御処理で用いる情報について説明する。上述のように、サーバ１００の記憶部２１０は、例えば、設定制御プログラム、並びに、後述する旅程計画マスタ６００、スポットマスタ７００、関連付情報８００、及び訪問済情報９００などの情報を記憶していてよい。
【００２５】
図６は、旅程計画マスタ６００を例示する図である。旅程計画マスタ６００には、例えば、ユーザや、旅程計画支援サービスを提供する運営者などにより登録された旅程計画３０１と対応するエントリが登録されている。エントリは、例えば、旅程計画ＩＤ（identifier）、旅程計画名、及び説明を含む。旅程計画ＩＤは、例えば、旅程計画マスタ６００に登録されているエントリと対応する旅程計画３０１を識別するための情報である。旅程計画名は、例えば、エントリと対応する旅程計画３０１の名称である。説明は、例えば、エントリと対応する旅程計画３０１についての説明である。説明には、例えば、旅程計画に示される旅程を巡る目的や、旅程の魅力などが登録されていてよい。
【００２６】
図７は、スポットマスタ７００を例示する図である。スポットマスタ７００には、例えば、ユーザや、旅程計画支援サービスを提供する運営者などにより登録されたスポット情報４０１に関するエントリが登録されている。エントリは、例えば、スポットＩＤ、スポット名、及び説明を含む。スポットＩＤは、例えば、スポットマスタ７００に登録されているエントリと対応するスポット情報４０１を識別するための情報である。スポット名は、例えば、エントリと対応するスポット情報４０１の名称である。説明は、例えば、エントリと対応するスポット情報４０１についての説明である。説明には、例えば、エントリと対応するスポット情報４０１を訪れる目的や、スポット情報４０１の魅力などが登録されていてよい。
【００２７】
図８は、関連付情報８００を例示する図である。関連付情報８００には、旅程計画３０１と、旅程計画３０１に含まれるスポット情報４０１とを関連付けるエントリが登録されている。エントリは、例えば、旅程計画ＩＤ、スポット情報４０１を識別するためのスポットＩＤ、及び、エントリの旅程計画ＩＤで識別される旅程計画において、エントリのスポットＩＤで識別されるスポット情報４０１のスポットを巡る順序を含む。従って、旅程計画マスタ６００、及びスポットマスタ７００とともに、関連付情報８００を参照することで、旅程計画、旅程計画に含まれるスポット、及びスポットを巡る順番の情報を取得することができる。
【００２８】
図９は、実施形態に係る訪問済情報９００を例示する図である。訪問済情報９００は、例えば、ユーザ毎に生成される情報であってよい。訪問済情報９００には、ユーザが選択した旅程計画３０１についてのエントリが登録されている。エントリは、例えば、ユーザＩＤ、旅程計画ＩＤ、スポットＩＤ、及び属性の情報を含む。ユーザＩＤは、訪問済情報９００と対応するユーザを識別するための識別情報である。旅程計画ＩＤは、旅程計画３０１を識別するための情報である。スポットＩＤは、スポット情報４０１を識別するための情報である。属性はエントリのユーザＩＤで識別されるユーザが、エントリと対応する旅程計画又はスポットを訪問したか否かを示す属性である。図９の例では、属性は、値：１が訪問済みを表し、値：０が未訪問を表すものとする。なお、属性は、訪問済情報９００にエントリが登録される際には、未訪問を表す値：０が登録される。その後、ユーザが訪問済みに設定を変更する指示を入力すると、後述する処理により、未訪問を表す値：０が訪問済みを表す値：１に更新される。また、図９の例では、訪問済情報９００は、旅程計画の訪問の有無と、スポットの訪問の有無の情報をまとめて管理しており、エントリが旅程計画の訪問の有無の情報と対応する場合には、スポットＩＤには「ｎｕｌｌ」が登録されている。また、エントリがスポットの訪問の有無の情報と対応する場合には、スポットＩＤにはスポットマスタ７００のスポットＩＤと対応する情報が登録される。なお、別の実施形態では、旅程計画の訪問の有無と、スポットの訪問の有無とを別のデータで管理してもよい。
【００２９】
図１０は、実施形態に係るユーザ、旅程計画３０１、スポット情報４０１と、属性との関係を例示する図である。例えば、図１０では、ユーザＩＤ：Ｕ００１のユーザが、旅程計画ＩＤ：Ｐ０００１０、及びＰ０００２０の旅程計画３０１を、自身が興味のある旅程計画３０１として選択しているものとする。図１０の例では、旅程計画ＩＤ：Ｐ０００１０の旅程計画はまだ未訪問であり、一方、旅程計画ＩＤ：Ｐ０００２０は訪問済みである。また、旅程計画ＩＤ：Ｐ０００１０には、スポットＩＤ：Ｓ０００１０、Ｓ０００２０、Ｓ０００３０のスポット情報４０１が含まれており、そのうちのスポットＩＤ：Ｓ０００１０、Ｓ０００２０のスポット情報４０１については訪問済みである。一方、スポットＩＤ：Ｓ０００３０で識別されるスポット情報４０１は、未訪問ある。この様に、ユーザと、旅程計画３０１と、スポット情報４０１と、属性との関係が、例えば、訪問済情報９００により定義されている。
【００３０】
図１１は、実施形態に係る旅程計画３０１の訪問済みの設定制御処理の動作フローを例示する図である。制御部２００は、例えば、旅程計画一覧画面３００において、ユーザが旅程計画３０１を選択して訪問済みに設定する指示を端末１０を介してサーバ１００に入力し、サーバ１００が入力を受け付けると、図１１の動作フローを開始してよい。
【００３１】
Ｓ１１０１においてサーバ１００の制御部２００は、受け付けた指示で指定された旅程計画３０１と対応するエントリの属性を、訪問済情報９００において訪問済みを示す情報（例えば、値：１）に変更して、属性の設定を更新する。なお、旅程計画３０１と対応するエントリは、例えば、図９では、旅程計画一覧画面３００で選択された旅程計画３０１と対応する旅程計画ＩＤを含み、且つ、スポットＩＤに指定がない（例えば、ｎｕｌｌ）のエントリであってよい。
【００３２】
また、Ｓ１１０２において制御部２００は、訪問済情報９００において、選択された旅程計画３０１に含まれるスポット情報４０１と対応するエントリについても、属性を訪問済みを示す情報（例えば、値：１）に変更して、属性の設定を更新する。例えば、制御部２００は、選択された旅程計画３０１と対応する旅程計画ＩＤを含む他の全てのエントリの属性を訪問済みに設定する。
【００３３】
Ｓ１１０３において、制御部２００は、Ｓ１１０２で訪問済みに変更したエントリのスポットＩＤを含む他の全てのエントリについても属性を訪問済みに設定して、属性の設定を更新し、本動作フローは終了する。
【００３４】
以上で述べた様に、実施形態によれば、制御部２００は、旅程計画３０１の属性を、訪問済みを示す情報に変更した場合、旅程計画３０１に含まれるスポット情報４０１を含むすべてのエントリの属性を、訪問済みに変更する。そのため、ユーザは、旅程計画３０１に含まれるスポット情報４０１に、個別に訪問済みを示す情報を設定しなくてもよい。従って、訪問済みを示す情報を簡便に設定することができる。
【００３５】
また、一方で、或る旅程計画３０１を訪問済みにし、その旅程計画３０１に含まれる全てのスポット情報４０１の属性も訪問済みに変更した場合に、別の旅程計画３０１に含まれる全てのスポット情報４０１が訪問済みとなることがある。例えば、図５において、旅程計画２に含まれるスポット情報４０１を全て訪問済みに設定した場合、旅程計画３に含まれる全てのスポット情報４０１が、訪問済みとなる。しかしながら、実施形態によれば、或る旅程計画３０１を訪問済みに設定した場合に、別の旅程計画３０１に含まれる全てのスポット情報が訪問済みとなっても、別の旅程計画３０１は、訪問済みには設定しない。これは、例えば、上述のように、たとえ同じスポットを同じ順序で巡る旅程計画であったとしても、異なる旅程計画は別の旅程計画として扱うことが好ましい状況があるためである。そのため、実施形態によれば、旅程計画の訪問済みか否かの情報の管理の精度を向上させることができる。
【００３６】
図１２は、実施形態に係るスポット情報４０１の訪問済みの設定制御処理の動作フローを例示する図である。制御部２００は、例えば、スポット一覧画面４００において、ユーザが或るスポット情報４０１を訪問済みに設定する指示を端末１０を介してサーバ１００に入力し、サーバ１００が入力を受け付けると、図１２の動作フローを開始してよい。なお、スポット一覧画面４００は、例えば、旅程計画一覧画面３００においてユーザが旅程計画３０１を選択すると表示される画面であり、選択された旅程計画３０１と対応付けられている。
【００３７】
Ｓ１２０１においてサーバ１００の制御部２００は、訪問済みに設定する指示が入力されたスポット情報４０１の属性を訪問済みを示す情報に変更して、属性の設定を更新する。例えば、制御部２００は、指示が入力されたスポット一覧画面４００と対応する旅程計画３０１の旅程計画ＩＤと、指示で指定されたスポット情報４０１のスポットＩＤとを含む訪問済情報９００のエントリの属性を訪問済み（例えば、値：１）に変更する。
【００３８】
Ｓ１２０２において制御部２００は、また、訪問済情報９００において、指示が入力されたスポット情報４０１のスポットＩＤを含む他のエントリについても、属性を訪問済みを示す情報に変更して、属性の設定を更新する。
【００３９】
Ｓ１２０３において制御部２００は、指示が入力されたスポット情報４０１を含むスポット一覧画面４００に含まれる全てのスポット情報４０１の属性が訪問済みか否かを判定する。全てのスポット情報４０１の属性が訪問済みの場合（Ｓ１２０３がＹＥＳ）、フローはＳ１２０４に進む。Ｓ１２０４において制御部２００は、全てのスポット情報４０１の属性が済みとなったスポット一覧画面４００と対応する旅程計画３０１のエントリの属性を訪問済情報９００において訪問済みを示す情報に変更して、属性の設定を更新し、本動作フローは終了する。例えば、制御部２００は、スポット一覧画面４００と対応する旅程計画３０１の旅程計画ＩＤを含み、スポットＩＤが「ｎｕｌｌ」のエントリの属性を訪問済みを示す情報に変更する。一方、全てのスポット情報４０１の属性が済みでない場合（Ｓ１２０３がＮＯ）、本動作フローは終了する。
【００４０】
以上で述べた様に、制御部２００は、スポット一覧画面４００においてスポット情報４０１の属性を訪問済みを示す情報に変更したとする。この場合に、スポット一覧画面４００の全てのスポット情報４０１が訪問済みとなれば、スポット一覧画面４００と対応する旅程計画３０１の訪問済みに変更する。この様に、或る旅程計画３０１を開いて表示されたスポット情報４０１の全ての属性が訪問済みに設定されると、その旅程計画３０１の属性が自動的に済みに設定される。そのため、ユーザが旅程計画３０１と、スポット情報４０１との両方を訪問済みに変更する手間を省くことができる。
【００４１】
一方で、或る旅程計画３０１に含まれる或るスポット情報４０１の属性を訪問済みに変更した場合に、別の旅程計画３０１に含まれる全てのスポット情報４０１の属性が訪問済みとなることがある。例えば、図５において、スポット情報５及びスポット情報６が既に訪問済みとなっているものとする。この場合に、ユーザが旅程計画２において、スポット情報３を訪問済みに設定すると、設定対象となっている旅程計画２に含まれる全てのスポット情報４０１が訪問済みとなるため、制御部２００は、旅程計画２を訪問済みに設定する。また、この時、同時に旅程計画３に含まれる全てのスポット情報４０１が訪問済みとなる。しかしながら、実施形態によれば、或る旅程計画３０１の或るスポット情報を訪問済みに設定した場合に、別の旅程計画３０１に含まれる全てのスポット情報が訪問済みとなっても、別の旅程計画３０１は、訪問済みには設定しない。これは、例えば、上述のように、同じスポットを同じ順序で巡る旅程計画であったとしても、異なる旅程計画は別の旅程計画として扱うことが好ましい状況があるためである。そのため、実施形態によれば、旅程計画の訪問済みか否かの情報の管理の精度を向上させることができる。
【００４２】
図１３は、実施形態に係る旅程計画一覧画面３００又はスポット一覧画面４００の表示処理の動作フローを例示する図である。制御部２００は、例えば、端末１０において入力された旅程計画一覧画面３００又はスポット一覧画面４００のいずれかの表示指示の通知を、端末１０から受け付けると、図１３の動作フローを開始してよい。
【００４３】
Ｓ１３０１において制御部２００は、入力された表示指示に応じて情報を取得する。例えば、制御部２００は、旅程計画一覧画面３００の表示指示が入力されている場合、訪問済情報９００からスポットＩＤが「ｎｕｌｌ」のエントリの情報を読み出す。一方、制御部２００は、スポット一覧画面４００の表示指示が入力されている場合、訪問済情報９００からスポットＩＤが「ｎｕｌｌ」で無いエントリの情報を読み出す。
【００４４】
Ｓ１３０２において制御部２００は、読み出したエントリの情報において属性を参照し、訪問済みを示す情報（例えば、値：１）が設定されているエントリよりも、未訪問を示す情報（例えば、値：０）が設定されているエントリを優先するように並び変える。例えば、制御部２００は、旅程計画一覧画面３００の表示指示が入力されている場合、訪問済情報９００から読み出したスポットＩＤが「ｎｕｌｌ」のエントリの属性を参照する。そして、制御部２００は、訪問済みに対応する値：１のエントリよりも、未訪問に対応する値：０のエントリを上位に配置するように並べ替える。また、同様に、制御部２００は、例えば、スポット一覧画面４００の表示指示が入力されている場合、訪問済情報９００から読み出したスポットＩＤが「ｎｕｌｌ」で無いエントリの属性を参照する。そして、制御部２００は、訪問済みに対応する値：１のエントリよりも、未訪問に対応する値：０のエントリを上位に配置するように並べ替える。上位への配置は、例えば、ユーザにとって下位のものよりも目にとまりやすくなるように端末１０の表示画面に表示させる設定であり、一例では、上段に配置することであってよい。
【００４５】
Ｓ１３０３において制御部２００は、並べ替え順序に従って読み出したエントリを表示するための表示情報を生成し、端末１０に通知する。例えば、制御部２００は、旅程計画一覧画面３００の表示指示が入力されている場合、訪問済情報９００から読み出したスポットＩＤが「ｎｕｌｌ」で属性が値：０のエントリを上位に配置して表示するための表示情報を、端末１０に出力する。なお、図３は、この場合に表示される端末１０の表示画面を例示しており、未訪問の旅程計画３０１が、訪問済みの旅程計画３０１よりも上段に表示されており、ユーザの目にすぐつくようになっている。また、例えば、スポット一覧画面４００の表示指示が入力されている場合、訪問済情報９００から読み出したスポットＩＤが「ｎｕｌｌ」で無く、属性が値：０のエントリを上位に配置して表示するための表示情報を、端末１０に出力する。なお、図４は、この場合に表示される端末１０の表示画面を例示しており、未訪問のスポット情報４０１が、訪問済みのスポット情報４０１よりも上段に表示されており、ユーザの目にすぐつくようになっている。この様に、表示情報を出力すると、本動作フローは終了する。
【００４６】
以上で述べた様に、実施形態によれば、制御部２００は、端末１０の表示画面に旅程計画一覧画面３００やスポット一覧画面４００などを表示させるための表示情報を出力する際に、属性が未訪問のエントリを優先して上位に表示させる。そのため、旅程計画一覧画面３００やスポット一覧画面４００が端末１０の表示画面に表示された際に、ユーザは、まだ訪問したことのない旅程計画３０１やスポット情報４０１を容易に確認することができる。また、この様に表示させることで、実施形態によればユーザにとって有用な情報をより高い信頼性で優先させてユーザに表示することができる。
【００４７】
なお上記においては、旅程計画マスタ６００、スポットマスタ７００、関連付情報８００、訪問済情報９００などの情報をテーブル形式で例示しているが、実施形態はこれに限定されるものではない。例えば、これらの情報のエントリで対応付けられている情報を対応づけることが可能な形式であれば、リレーショナルデータベースや、ＫＶＳ（Key-Value Store）などのその他の形式で記憶部２１０に保存されていてもよい。また、上述の実施形態では、例えば、図９において、旅程計画の旅程計画ＩＤと、スポット情報のスポットＩＤとを組みで管理し、その組みに対して訪問済みか否かを示す属性を付す場合を例示している。しかしながら、実施形態はこれに限定されるものではない。例えば、別の実施形態では、旅程計画についての訪問済みか否かを示す属性と、スポットについての訪問済みか否かを示す属性とが独立してそれぞれ管理されていてもよい。
【００４８】
また、上述の実施形態の図１１及び図１２の動作フローはそれぞれ、実施形態に係る訪問済みを示す情報の設定制御方法の例である。
【００４９】
図１４は、実施形態に係るサーバ１００を実現するためのコンピュータ１４００のハードウェア構成を例示する図である。図１４のコンピュータ１４００のハードウェア構成は、例えば、プロセッサ１４０１、メモリ１４０２、記憶装置１４０３、読取装置１４０４、通信インタフェース１４０６、及び入出力インタフェース１４０７を備える。なお、プロセッサ１４０１、メモリ１４０２、記憶装置１４０３、読取装置１４０４、通信インタフェース１４０６、入出力インタフェース１４０７は、例えば、バス１４０８を介して互いに接続されている。
【００５０】
プロセッサ１４０１は、メモリ１４０２を利用して例えば上述の動作フローの手順を記述した設定制御プログラムを実行することにより、上述した制御部２００の一部または全部の機能を提供する。また、記憶部２１０は、例えば、メモリ１４０２、記憶装置１４０３、及び着脱可能記憶媒体１４０５を含んでいる。サーバ１００の記憶装置１４０３には、例えば、旅程計画マスタ６００、スポットマスタ７００、関連付情報８００、訪問済情報９００などの情報が格納されている。
【００５１】
メモリ１４０２は、例えば半導体メモリであり、ＲＡＭ領域及びＲＯＭ領域を含んでいてよい。記憶装置１４０３は、例えばハードディスク、フラッシュメモリ等の半導体メモリ、又は外部記憶装置である。なお、ＲＡＭは、Random Access Memoryの略称である。また、ＲＯＭは、Read Only Memoryの略称である。
【００５２】
読取装置１４０４は、プロセッサ１４０１の指示に従って着脱可能記憶媒体１４０５にアクセスする。着脱可能記憶媒体１４０５は、例えば、半導体デバイス（ＵＳＢメモリ等）、磁気的作用により情報が入出力される媒体（磁気ディスク等）、光学的作用により情報が入出力される媒体（ＣＤ−ＲＯＭ、ＤＶＤ等）などにより実現される。なお、ＵＳＢは、Universal Serial Busの略称である。ＣＤは、Compact Discの略称である。ＤＶＤは、Digital Versatile Diskの略称である。
【００５３】
通信インタフェース１４０６は、プロセッサ１４０１の指示に従ってネットワーク５０を介してデータを送受信する。通信部２２０は、例えば、通信インタフェース１４０６である。そして、コンピュータ１４００は、例えば、通信インタフェース１４０６を介して端末１０と接続する。入出力インタフェース１４０７は、例えば、入力装置及び出力装置との間のインタフェースであってよい。入力装置は、例えばユーザからの指示を受け付けるキーボードやマウスなどのデバイスである。出力装置は、例えば、ディスプレーなどの表示装置、及びスピーカなどの音声装置である。
【００５４】
実施形態に係る各プログラムは、例えば、下記の形態でサーバ１００に提供される。
（１）記憶装置１４０３に予めインストールされている。
（２）着脱可能記憶媒体１４０５により提供される。
（３）プログラムサーバなどの別のサーバ１４３０から提供される。 
【００５５】
なお、図１４を参照して述べたサーバ１００を実現するためのコンピュータ１４００のハードウェア構成は、例示であり、実施形態はこれに限定されるものではない。例えば、上述の制御部２００の一部または全部の機能がＦＰＧＡ及びＳｏＣなどによるハードウェアとして実装されてもよい。なお、ＦＰＧＡは、Field Programmable Gate Arrayの略称である。ＳｏＣは、System-on-a-chipの略称である。
【００５６】
以上において、いくつかの実施形態が説明される。しかしながら、実施形態は上記の実施形態に限定されるものではなく、上述の実施形態の各種変形形態及び代替形態を包含するものとして理解されるべきである。例えば、各種実施形態は、その趣旨及び範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、前述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が訪問され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して又は置換して、或いは実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が訪問され得ることが当業者には理解されよう。
【符号の説明】
【００５７】
１０        端末
５０        ネットワーク
１００      サーバ
２００      制御部
２１０      記憶部
２２０      通信部
１４００    コンピュータ
１４０１    プロセッサ
１４０２    メモリ
１４０３    記憶装置
１４０４    読取装置
１４０５    着脱可能記憶媒体
１４０６    通信インタフェース
１４０７    入出力インタフェース
１４０８    バス
１４２０    ネットワーク
【図１】
2018018287.tif 000003
【図２】
2018018287.tif 000004
【図３】
2018018287.tif 000005
【図４】
2018018287.tif 000006
【図５】
2018018287.tif 000007
【図６】
2018018287.tif 000008
【図７】
2018018287.tif 000009
【図８】
2018018287.tif 000010
【図９】
2018018287.tif 000011
【図１０】
2018018287.tif 000012
【図１１】
2018018287.tif 000013
【図１２】
2018018287.tif 000014
【図１３】
2018018287.tif 000015
【図１４】
2018018287.tif 000016