(57)【要約】      （修正有）【課題】選択コンテンツの検索キーの設定状態を、選択コンテンツを含めたコンテンツにおける設定状態との対比において認識しやすくする。【解決手段】ＣＰＵは、対象コンテンツについて、キーワード別コンテンツ数（第１のカウント数）を求めると共に、選択コンテンツについて、キーワード別コンテンツ数（第２のカウント数）を求める。ヒストグラム３０６において、キーワード毎に棒３０９〜３１２が表示される。縦軸において、キーワード毎に各棒の長さ（高さ）が第１のカウント数に応じて示され、各棒の選択コンテンツに該当する部分（第２のカウント数に相当する部分）は当該棒における他の領域とは異なる態様（例えば、灰色）で表示される。【選択図】図３
2016126649.tif 000002
【特許請求の範囲】
【請求項１】
検索キーが対応付けて設定される複数のコンテンツを管理する情報処理装置であって、
前記複数のコンテンツのうち対象コンテンツの各々に設定された検索キーを抽出する抽出手段と、
前記対象コンテンツのうち少なくとも１つのコンテンツを選択する選択手段と、
検索キーが設定されている前記対象コンテンツの数を、前記抽出手段により抽出された検索キー毎にカウントする第１のカウント手段と、
検索キーが設定されている、前記選択手段により選択されたコンテンツの数を、前記抽出された検索キー毎にカウントする第２のカウント手段と、
前記第１のカウント手段によりカウントされた数と前記第２のカウント手段によりカウントされた数とを、前記抽出された検索キー毎に識別できる所定の態様で表示させるよう制御する制御手段と、を有することを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記第１のカウント手段によりカウントされた数と前記第２のカウント手段によりカウントされた数とを、前記抽出された検索キー毎に識別できるヒストグラムとして表示させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記制御手段は、前記ヒストグラムにおいて前記抽出された検索キー毎に表示されるオブジェクトの各々を、前記第１のカウント手段によりカウントされた数に応じた大きさで表示すると共に、当該オブジェクトのうち前記第２のカウント手段によりカウントされた数に応じた大きさ分の領域の表示態様を当該オブジェクトのうち他の領域の表示態様と異ならせることを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記ヒストグラムにおいて前記抽出された検索キー毎に表示されたオブジェクトの移動操作を受け付ける受け付け手段を有し、
前記制御手段は、前記受け付け手段により第１のオブジェクトを第２のオブジェクトの領域へ移動させる移動操作が受け付けられた場合は、前記第１のオブジェクトに対応する検索キーが設定されているコンテンツから前記第１のオブジェクトに対応する検索キーの設定を解除すると共に、前記第１のオブジェクトに対応する検索キーが設定されているコンテンツに対して、前記第２のオブジェクトに対応する検索キーを設定することを特徴とする請求項２または３に記載の情報処理装置。
【請求項５】
前記ヒストグラムにおいて前記抽出された検索キー毎に表示されたオブジェクトの移動操作を受け付ける受け付け手段を有し、
前記制御手段は、前記受け付け手段により、何らかの検索キーの設定がされているコンテンツの数を示す第１のオブジェクトを、検索キーの設定がされていないコンテンツの数を示す第２のオブジェクトの領域へ移動させる移動操作または所定の領域へ移動させる移動操作が受け付けられた場合は、前記第１のオブジェクトに対応する検索キーが設定されているコンテンツから前記第１のオブジェクトに対応する検索キーの設定を解除することを特徴とする請求項２または３に記載の情報処理装置。
【請求項６】
前記制御手段は、前記選択手段により選択されたコンテンツを示す表示情報を一覧表示させ、前記ヒストグラムにおいて検索キーが指定されると、その検索キーが設定されているコンテンツを示す表示情報を、前記一覧表示において強調表示させることを特徴とする請求項２または３に記載の情報処理装置。
【請求項７】
前記対象コンテンツは、管理される前記複数のコンテンツのうち、ユーザが指定した検索キーに基づき検索されたコンテンツであることを特徴とする請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記制御手段は、前記選択手段により選択されるコンテンツの変更、または前記対象コンテンツの変更があった場合に、前記所定の態様による表示を更新することを特徴とする請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
前記制御手段は、ユーザからの指示に応じて、前記所定の態様による表示を行うか否かを決定することを特徴とする請求項１〜８のいずれか１項に記載の情報処理装置。
【請求項１０】
検索キーが対応付けて設定される複数のコンテンツを管理する情報処理装置の制御方法であって、
前記複数のコンテンツのうち対象コンテンツの各々に設定された検索キーを抽出する抽出工程と、
前記対象コンテンツのうち少なくとも１つのコンテンツを選択する選択工程と、
検索キーが設定されている前記対象コンテンツの数を、前記抽出工程により抽出された検索キー毎にカウントする第１のカウント工程と、
検索キーが設定されている、前記選択工程により選択されたコンテンツの数を、前記抽出された検索キー毎にカウントする第２のカウント工程と、
前記第１のカウント工程によりカウントされた数と前記第２のカウント工程によりカウントされた数とを、前記抽出された検索キー毎に識別できる所定の態様で表示させるよう制御する制御工程と、を有することを特徴とする情報処理装置の制御方法。
【請求項１１】
前記制御工程は、前記第１のカウント工程によりカウントされた数と前記第２のカウント工程によりカウントされた数とを、前記抽出された検索キー毎に識別できるヒストグラムとして表示させることを特徴とする請求項１０に記載の情報処理装置の制御方法。
【請求項１２】
請求項１０または１１に記載の情報処理装置の制御方法をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のコンテンツを管理する情報処理装置等に関する。
【背景技術】
【０００２】
従来、複数のコンテンツを管理する情報処理装置において、各々のコンテンツにキーワード等の検索キーを対応付けて設定する装置が知られている。特許文献１には、複数の選択されたコンテンツに対してキーワードを設定するときに、既に存在するキーワードについて選択されたコンテンツに対する設定状態に応じて態様を変えて表示する装置が記載されている。この装置において、設定状態には、「選択された複数のコンテンツ全てに設定されている」、「選択された複数のコンテンツのうち一部に設定されている」、「選択された複数のコンテンツのいずれにも設定されていない」の３つの状態があるとされる。これにより、ユーザは、選択された複数のコンテンツにおいて、キーワード毎に設定状況（偏り）を認識することができる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１３−１４９１５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１は、選択されたコンテンツの範囲でのキーワードの設定状態を通知する構成であるため、ユーザは、選択されていないコンテンツも含めたコンテンツ全体における各キーワードの設定状態までは分からなかった。
【０００５】
例えば、選択したコンテンツに任意のキーワードを設定する際、コンテンツ全体におけるキーワードの設定状態を知ることができないとすると、ユーザにとっては、各コンテンツについてどのようなキーワードを設定するのが最適かを判断しにくい。適切なキーワードを設定し損なったり、意味が重複する異なるキーワードを設定してしまったりすると、後にキーワードで検索・分類したときに所望の結果が得られない事態となり得る。
【０００６】
本発明は上記従来技術の問題を解決するためになされたものであり、その目的は、選択コンテンツの検索キーの設定状態を、選択コンテンツを含めたコンテンツにおける設定状態との対比において認識しやすくすることにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために本発明は、検索キーが対応付けて設定される複数のコンテンツを管理する情報処理装置であって、前記複数のコンテンツのうち対象コンテンツの各々に設定された検索キーを抽出する抽出手段と、前記対象コンテンツのうち少なくとも１つのコンテンツを選択する選択手段と、検索キーが設定されている前記対象コンテンツの数を、前記抽出手段により抽出された検索キー毎にカウントする第１のカウント手段と、検索キーが設定されている、前記選択手段により選択されたコンテンツの数を、前記抽出された検索キー毎にカウントする第２のカウント手段と、前記第１のカウント手段によりカウントされた数と前記第２のカウント手段によりカウントされた数とを、前記抽出された検索キー毎に識別できる所定の態様で表示させるよう制御する制御手段と、を有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、選択コンテンツの検索キーの設定状態を、選択コンテンツを含めたコンテンツにおける設定状態との対比において認識しやすくすることができる。
【図面の簡単な説明】
【０００９】
【図１】一実施の形態に係る情報処理装置の構成を示すブロック図である。
【図２】コンテンツのデータ構成（図（ａ））、コンテンツとキーワードとの関連を示す情報の構成（図（ｂ））、キーワードのデータ構成を示す概念図（図（ｃ））である。
【図３】コンテンツの一覧表示（図（ａ）、（ｃ））、キーワード毎のコンテンツ数のヒストグラム表示（図（ｂ）、（ｄ））の一例を示す図である。
【図４】ヒストグラム表示処理を示すフローチャートである。
【図５】キーワードカウント処理を示すフローチャートである。
【図６】カウント対象のコンテンツとキーワードとの関係を示す概念図である。
【図７】キーワード未設定のコンテンツにキーワードを付与する処理を示すフローチャートである。
【図８】選択コンテンツにキーワードを付与する処理を示すフローチャートである。
【図９】棒の移動操作によってキーワードを付与する処理を示すフローチャートである。
【図１０】ドラッグドロップ操作によるキーワードの設定状態の変化を示すヒストグラムである。
【図１１】変形例を示す図である。
【発明を実施するための形態】
【００１０】
以下、本発明の実施の形態を図面を参照して説明する。
【００１１】
図１は、本発明の一実施の形態に係る情報処理装置の構成を示すブロック図である。この情報処理装置は、それぞれバス１１２に接続されたＶＲＡＭ１０２、ＢＭＵ（ビットムーブユニット）１０３、キーボード１０４、ＰＤ（ポインティングデバイス）１０５を有する。情報処理装置はさらに、それぞれバス１１２に接続されたＣＰＵ１０６、ＲＯＭ１０７、ＲＡＭ１０８、ＨＤＤ１０９、フレキシブルディスク１１０、ネットワーク（ＮＥＴ）Ｉ／Ｆ１１１を有する。ＶＲＡＭ１０２にディスプレイ（ＣＲＴ）１０１が接続される。
【００１２】
ディスプレイ１０１には、例えば情報処理装置で操作の対象となるアイコン、メッセージ、メニューその他のユーザインタフェース情報が表示される。ＶＲＡＭ１０２には、ディスプレイ１０１に表示するための画像が描画される。画像の描画のためにＶＲＡＭ１０２に生成された画像データは、所定の規則に従ってディスプレイ１０１に転送され、これによりディスプレイ１０１に画像が表示される。ＢＭＵ１０３は、例えば、メモリ間（例えば、ＶＲＡＭ１０２と他のメモリとの間）のデータ転送や、メモリと各Ｉ／Ｏデバイス（例えば、ネットワークＩ／Ｆ１１１）との間のデータ転送を制御する。キーボード１０４は、文字等を入力するための各種キーを有する。ＰＤ１０５は、例えば、ディスプレイ１０１に表示されたアイコン、メニューその他のコンテンツの指示、またはオブジェクトのドラッグドロップのために使用される。
【００１３】
ＣＰＵ１０６は、ＯＳ（オペレーションシステム）や各種制御プログラムに基づいて、各デバイスを制御する。ＯＳは、ＲＯＭ１０７、ＨＤＤ１０９またはフレキシブルディスク１１０に格納される。制御プログラムは、後述する複数のコンテンツを管理すると共に検索機能を有するプログラム等である。ＲＯＭ１０７は、各種制御プログラムやデータを保存する。ＲＡＭ１０８は、ＣＰＵ１０６のワーク領域、エラー処理時のデータの退避領域、制御プログラムのロード領域等を有する。ＨＤＤ１０９は、情報処理装置で実行される各制御プログラムや一時保管したデータ等のデータを格納する。
【００１４】
ネットワークＩ／Ｆ１１１は、他の情報処理装置やプリンタ等とネットワークを介して通信する。バス１１２は、アドレスバス、データバス及びコントロールバスを含む。ＣＰＵ１０６に対する制御プログラムは、ＲＯＭ１０７、ＨＤＤ１０９、フレキシブルディスク１１０から提供することもできるし、ネットワークＩ／Ｆ１１１を介してネットワーク経由で他の情報処理装置等から提供することもできる。
【００１５】
図２（ａ）は、情報処理装置で管理されるコンテンツのデータ構成を示す概念図である。コンテンツＩＤ２０１は、情報処理装置においてコンテンツを管理するためにコンテンツ毎に割り当てた識別情報である。コンテンツデータ２０２は、情報処理装置で管理しているコンテンツデータである。図２（ａ）の例では、コンテンツデータ２０２は、コンテンツのデータの実体へのパスであるが、コンテンツデータの実体そのものであってもよく、この例に限定されるものではない。登録日時２０３は、管理されるコンテンツデータ２０２の情報処理装置への登録日時を示す。
【００１６】
図２（ｂ）は、コンテンツとキーワードとの関連を示す情報の構成の一例を示す概念図である。コンテンツＩＤ２０４は、図２（ａ）に示すコンテンツＩＤ２０１に相当する。キーワードＩＤ２０５は、コンテンツと関連付くキーワードの各々の識別情報である。図２（ｂ）の例では、コンテンツ１〜６に対してキーワード１が対応付けられ、コンテンツ１〜４に対してキーワード２が対応付けられ、コンテンツ５、６に対してキーワード３が対応付けられている。
【００１７】
図２（ｃ）は、キーワードのデータ構成の一例を示す概念図である。キーワードＩＤ２０６は、図２（ｂ）に示すキーワードＩＤ２０５に相当する。キーワードＩＤ２０６として、キーワード１、２、３が例示される。キーワード２０７は、情報処理装置で管理される検索キーであり、キーワード１、２、３として、それぞれ「生物」、「哺乳類」、「魚類」が例示されている。コンテンツ数２０８は、キーワード２０７が設定されている（対応付けられている）コンテンツデータ２０２のキーワード２０７毎の件数である。図２（ｃ）の例では、キーワード１、２、３が設定されているコンテンツ数２０８は、それぞれ６件、４件、２件である。図２（ａ）、（ｂ）、（ｃ）に示すデータはＨＤＤ１０９等に格納される。なお、キーワードが全く設定されていないコンテンツについてもその件数はＣＰＵ１０６が計数し、図２（ｃ）のデータと共に格納しておく。
【００１８】
ところで、ユーザは、キーボード１０４、ＰＤ１０５及びディスプレイ１０１を用いて、コンテンツの新規登録や削除を行うことができ、また、コンテンツの各々に対してキーワードの設定をしたり設定を解除したりすることができる。ＣＰＵ１０６は、これらのユーザの指示を受けて図２（ａ）、（ｂ）、（ｃ）に示すデータ構成を更新する。
【００１９】
図３（ａ）は、コンテンツの一覧表示を示す図である。図３（ｂ）は、一覧表示されたコンテンツについてのキーワード毎のコンテンツ数のヒストグラム表示の一例を示す図である。これらはディスプレイ１０１に一緒に表示される。
【００２０】
図３（ａ）に示した一覧表示３０１では、情報処理装置で管理されている全てのコンテンツの各々を示す表示情報の例示として四角いアイコンが表示される。アイコン３０２、３０３は、全コンテンツのうち選択されているコンテンツ（ここではコンテンツ４、５）を示すアイコンである。なお、アイコン３０２、３０３は、選択されていないコンテンツに対応するアイコンと区別するために灰色にしている。しかし、選択状態であることを示すための表示方法は例示に限定されるものではない。
【００２１】
アイコン３０４、３０５は、管理される全コンテンツのうち、ヒストグラム３０６（図３（ｂ））の中でユーザが指定したキーワードを持つ（が設定されている）コンテンツを示すアイコンである。ヒストグラム３０６においてキーワードが指定されると、そのキーワードが設定されているコンテンツのアイコンが太枠等で強調表示される。アイコン３０４、３０５はその例示である。例えば、ヒストグラム３０６において「なし」を示す棒３０９をユーザがクリックした場合に、設定されているキーワードを持たないコンテンツ（ここではコンテンツ７、８）を示すアイコン３０４、３０５が強調表示される。
【００２２】
なお、強調表示は、説明の便宜上、太枠としているが、これに限られず、ハイライトや点滅などでもよい。なお、コンテンツを強調表示させるためのキーワードの指定の操作は、棒３０９〜３１２の長押しやマウスオーバーなどの操作であってもよい。
【００２３】
ヒストグラム３０６（図３（ｂ））は、一覧表示３０１で表示されているコンテンツの数をキーワード毎に識別できる表示態様の例である。ここでのキーワードは、全コンテンツに関し、設定されているキーワードとして抽出されたものの全てである。ヒストグラム３０６においては、キーワード毎に、キーワード「なし、１、２、３」に対応するオブジェクトとして棒３０９、３１０、３１１、３１２が表示される。横軸にはキーワードの名称としてキーワード項目名３０７が付されている。縦軸において、キーワード毎のコンテンツの総数３０８が長さ（高さ）で示される。棒３０９は、キーワードの設定がないコンテンツの数を示している。
【００２４】
図２に例示したデータを例にとると、全てのコンテンツに関して、「生物」のキーワードを持つものが６件、「哺乳類」のキーワードを持つものが４件、「魚類」のキーワード持つものが２件であり、キーワードのないコンテンツは２件である。従って、棒３１０、３１１、３１２の長さはコンテンツ数２０８（図２（ｃ））の値に対応している。また、選択中のアイコン３０２、３０３のコンテンツ４、５は共に「生物」のキーワードを持ち、さらにアイコン３０２のコンテンツは「哺乳類」、アイコン３０３のコンテンツは「魚類」のキーワードを持っている。従って、後述する選択コンテンツ対応部の長さは、棒３１０、３１１、３１２においてそれぞれ、２、１、１となっている。
【００２５】
ヒストグラム３０６の棒において、選択されているコンテンツ（以下、選択中のコンテンツ、あるいは選択コンテンツと略称することもある）に該当する部分（選択コンテンツ対応部）は当該棒における他の領域とは異なる態様で表示される。例えば、各棒の全領域のうち選択中のアイコン３０２、３０３に対応するコンテンツの数に相当する部分（例えば、選択コンテンツ対応部３１０ａ）だけ灰色で表示される。なお、説明の便宜上、選択コンテンツ対応部は灰色にしているが、選択コンテンツの数や割合を視認させるための表示方法はこの例に限定されるものではない。
【００２６】
なお、キーワード項目名が多い場合やコンテンツ数が多い場合で、画面上にヒストグラム３０６の全てを表示しきれない場合は、スクロールで表示できるようにしても良い。また、ヒストグラム３０６において縦軸と横軸とを入れ替えても良い。なお、説明の便宜上、一覧表示３０１とヒストグラム３０６とは、ディスプレイ１０１において個別に表示されるとしたが、同一ウィンドウに重ねてもよいし、別ウィンドウでも表示してもよい。
【００２７】
図３（ｃ）は、コンテンツの一覧表示を示す図である。図３（ｄ）は、一覧表示されたコンテンツについてのキーワード毎のコンテンツ数のヒストグラム表示の一例を示す図である。
【００２８】
上述した図３（ａ）の例では、情報処理装置で管理されている全てのコンテンツが一覧表示されるとした。しかし、情報処理装置で管理されている全てのコンテンツのうち一部を一覧表示してもよい。例えば、ユーザが任意に選んだコンテンツだけを一覧表示してもよい。あるいは、ユーザが指定したキーワード（２つ以上であってもよい）で検索した結果、ヒットした（絞り込んだ）コンテンツだけを一覧表示してもよい。
【００２９】
図３（ｃ）に示す例では、ユーザが任意に選んだコンテンツ２、３、４、５、７、８を示すアイコンだけが一覧表示３０１として表示される。この場合、図３（ｄ）に示すヒストグラム３０６では、各キーワード項目名に対応する棒の長さは、コンテンツ２、３、４、５、７、８のうち、各キーワードが設定されているコンテンツの総数となる。また、コンテンツ４、５が選択コンテンツであるとすると、選択コンテンツ対応部の長さは、コンテンツ４、５のうち、各キーワードが設定されているコンテンツの総数となる。
【００３０】
ところで、コンテンツ数のカウントの対象とされるコンテンツ群を「対象コンテンツ」と呼称する。対象コンテンツは、図３（ａ）に例示するように、管理される全てのコンテンツでもよいし、図３（ｃ）に例示するように一部のコンテンツであってもよい。しかも、上述のように、対象コンテンツは、ユーザが任意に指定したものでもよいし、キーワードで絞り込んだものであってもよい。
【００３１】
図４は、ヒストグラム表示処理を示すフローチャートである。この処理は、情報処理装置の電源がオンにされると開始され、所定時間ごとに実行される。
【００３２】
まず、ステップＳ４０１では、ＣＰＵ１０６は、キーボード１０４やＰＤ１０５に対するユーザによる操作を監視し、操作があればそれを受け付ける。ユーザ操作が受け付けられた場合は、処理はステップＳ４０２に進む。ステップＳ４０２では、ＣＰＵ１０６は、ユーザ操作が、コンテンツの選択操作であるか否かを判別する。その判別の結果、ＣＰＵ１０６は、ユーザ操作がコンテンツの選択操作でない場合は、図４の処理を終了させる。一方、ユーザ操作がコンテンツの選択操作である場合は、ＣＰＵ１０６は、選択操作で選択されたコンテンツを選択コンテンツとすると共に（選択手段）、ヒストグラム表示をするか否かを判別する（ステップＳ４０３）。ここで、ヒストグラム表示を実施するかどうかは、図４の処理とは別途に、予めメニューなどユーザが指定できるようになっている。ＣＰＵ１０６は、ユーザによる指定に基づきヒストグラム表示をするか否かを決定する。
【００３３】
その判別の結果、ＣＰＵ１０６は、ヒストグラム表示を実施しない場合は、図４の処理を終了させる一方、ヒストグラム表示を実施する場合は、一部のコンテンツの表示中か否かを判別する。一部のコンテンツの表示中とは、例えば、図３（ｃ）に示すように全コンテンツのうち一部が表示された状態のことである。その判別の結果、ＣＰＵ１０６は、一部のコンテンツの表示中である場合は、処理をステップＳ４０５に処理を進める。一方、ＣＰＵ１０６は、一部のコンテンツの表示中でない場合、すなわち、例えば図３（ａ）に示す表示状態の場合は、処理をステップＳ４０６に進める。
【００３４】
ステップＳ４０５では、ＣＰＵ１０６は、後述する図５の処理により、対象コンテンツとなった、表示中の一部のコンテンツをカウント対象として、キーワード別コンテンツ数（第１のカウント数）を求める。一方、ステップＳ４０６では、ＣＰＵ１０６は、対象コンテンツとなった、情報処理装置で管理しているコンテンツ全てをカウント対象として、キーワード別コンテンツ数（第１のカウント数）を求める。ここで、ステップＳ４０６では、図２（ｃ）に示すコンテンツ数２０８を参照することでキーワード別コンテンツ数（第１のカウント数）を求めることもできる。なお、ステップＳ４０６でも、表示中の一部のコンテンツに対するステップＳ４０５での処理と同様に、後述する図５の処理により、管理しているコンテンツ全てを対象にキーワード別コンテンツ数を求めてもよい。
【００３５】
ステップＳ４０５またはステップＳ４０６の処理後は、処理はステップＳ４０７に進む。ステップＳ４０７では、ＣＰＵ１０６は、後述する図５の処理により、選択コンテンツ（図３（ａ）、（ｃ）ではコンテンツ４、５が該当する）をカウント対象として、キーワード別コンテンツ数（第２のカウント数）を求める。ここで、ＣＰＵ１０６は、ステップＳ４０５またはステップＳ４０６においては本発明における第１のカウント手段として機能し、ステップＳ４０７では本発明における第２のカウント手段として機能する。
【００３６】
次に、ステップＳ４０８では、ＣＰＵ１０６は、ステップＳ４０５またはステップＳ４０６で求めた第１のカウント数とステップＳ４０７で求めた第２のカウント数とに基づいて、ヒストグラム表示のための描画データを生成する。そしてＣＰＵ１０６は、生成した描画データに基づいてヒストグラム３０６（図３（ｂ）、（ｄ））を表示させる。ＣＰＵ１０６は、本発明における制御手段に該当する。
【００３７】
ヒストグラム３０６により、ユーザは、選択コンテンツの数が、対象コンテンツの中でどの程度の割合であるのかを、キーワード毎に視覚的に認識できる。これにより、キーワードの偏りを意識して絞り込みでの検索がしやすいキーワードを設定するのが容易になる。
【００３８】
図５は、図４のステップＳ４０５で実行されるキーワードカウント処理を示すフローチャートである。図６は、カウント対象のコンテンツとキーワードとの関係を示す概念図である。図６を適宜参照しながら図５の処理を説明する。なお、図５の処理では、対象コンテンツをカウント対象とする場合は、図３（ａ）に示す例ではコンテンツ１〜８が対象となり、図３（ｃ）に示す例ではコンテンツ２〜５、７、８が対象となる。図６に示す例では、図２に示した例においてコンテンツ１〜８の全てが対象コンテンツとなった場合を例示している。また、選択コンテンツをカウント対象とする場合は、図３（ａ）、（ｃ）のいずれの例でも、コンテンツ４、５が対象となる。
【００３９】
まず、ステップＳ５０１では、ＣＰＵ１０６は、変数Ｃｏｕｎｔにカウント対象のコンテンツの数を設定すると共に、変数Ｉｎｄｅｘを０に初期化し、さらにＭａｐの変数ＫｅｙＣｏｕｎｔを初期化する。変数Ｉｎｄｅｘは、現在、処理の対象となっているコンテンツを特定する値である。
【００４０】
ステップＳ５０２では、ＣＰＵ１０６は、変数Ｃｏｕｎｔと変数Ｉｎｄｅｘを比較し、Ｃｏｕｎｔ＝Ｉｎｄｅｘが成立するか否かを判別する。その判別の結果、Ｃｏｕｎｔ＝Ｉｎｄｅｘが成立する場合はカウント対象のコンテンツが存在しないので、ＣＰＵ１０６は、Ｍａｐの変数ＫｅｙＣｏｕｎｔを呼び出して元に戻し、図５の処理を終了させる。一方、Ｃｏｕｎｔ＝Ｉｎｄｅｘが成立しない（Ｃｏｕｎｔ＞Ｉｎｄｅｘが成立する）場合は、カウント対象のコンテンツが存在するので、ＣＰＵ１０６は、処理をステップＳ５０３に進める。ここで変数ＫｅｙＣｏｕｎｔは、キーワード毎の、カウント対象のコンテンツの数をカウントするための変数である。これの最終値が、第１のカウント数または第２のカウント数となる。
【００４１】
ステップＳ５０３では、ＣＰＵ１０６は、変数Ｉｎｄｅｘの示すコンテンツのキーワードＩＤリストを全て抽出する（抽出手段）。抽出されたキーワードには「なし」も追加されて、これらが抽出キーワードとして扱われる。例えば図６の例では、初回の処理ループでは変数Ｉｎｄｅｘ＝０であるので、キーワードは抽出されないが、２回目の処理ループでは、変数Ｉｎｄｅｘ＝１となって、コンテンツ１に設定されているキーワード１、２が抽出される。なお、その次の処理ループでは、変数Ｉｎｄｅｘ＝２となって、コンテンツ２に設定されているキーワード１、２が抽出される。
【００４２】
次に、ステップＳ５０４では、ＣＰＵ１０６は、ステップＳ５０３にて抽出したキーワードＩＤリストのキーワードＩＤ数を変数Ｃｎｔに設定すると共に、変数Ｉｄｘを０に初期化する。ここで変数Ｃｎｔは、コンテンツ毎の、設定されているキーワード数をカウントするための変数である。変数Ｉｄｘは、各コンテンツに設定されているキーワードを規定する値であり、設定されているキーワードに対して付される連番に相当する。例えば、コンテンツ５においては、変数Ｉｄｘ＝１がキーワード１を規定し、変数Ｉｄｘ＝２がキーワード３を規定し、変数Ｃｎｔは２となる。
【００４３】
次に、ステップＳ５０５では、ＣＰＵ１０６は、変数Ｃｎｔと変数Ｉｄｘを比較し、Ｃｎｔ＝Ｉｄｘが成立するか否かを判別する。その判別の結果、Ｃｎｔ＝Ｉｄｘが成立する場合は、今回処理の対象となっているコンテンツについて、未カウントのキーワードは無いので、ＣＰＵ１０６は、処理をステップＳ５０８に進める。一方、Ｃｎｔ＝Ｉｄｘが成立しない（Ｃｎｔ＞Ｉｄｘが成立する）場合は、今回処理の対象となっているコンテンツについて、未カウントのキーワードがあるので、ＣＰＵ１０６は、処理をステップＳ５０６に進める。
【００４４】
ステップＳ５０６では、ＣＰＵ１０６は、ステップＳ５０３で抽出したキーワードＩＤのうち、今回の変数Ｉｄｘが示すキーワードＩＤに対応する変数ＫｅｙＣｏｕｎｔをインクリメントする。例えば、コンテンツ１についてのステップＳ５０６の初回の処理ループでは、図６に示す変数ＫｅｙＣｏｕｎｔのうち、キーワード１の列の値がインクリメントされ、２回目の処理ループでは、キーワード２の列の値がインクリメントされる。コンテンツ５についての初回の処理ループでは、図６に示す変数ＫｅｙＣｏｕｎｔのうち、キーワード１の列の値がインクリメントされ、２回目の処理ループでは、キーワード３の列の値がインクリメントされる。
【００４５】
次に、ステップＳ５０７では、ＣＰＵ１０６は、変数Ｉｄｘをインクリメントし、処理をステップＳ５０５に戻す。ステップＳ５０８では、ＣＰＵ１０６は、変数Ｉｎｄｅｘをインクリメントし、処理をステップＳ５０２に戻す。
【００４６】
従って、ステップＳ５０５〜Ｓ５０７の繰り返しによって、今回の処理対象のコンテンツに設定されているキーワードに対応する変数ＫｅｙＣｏｕｎｔが加算されていく。また、変数Ｉｎｄｅｘがインクリメントされて、処理対象のコンテンツが１つずつ進行し、各コンテンツについてステップＳ５０５〜Ｓ５０７が実行される。最終的に、変数ＫｅｙＣｏｕｎｔから、カウント対象のコンテンツの全てをカウント対象にした結果として、キーワード毎のコンテンツ数が取得される。
【００４７】
対象コンテンツをカウント対象として図５の処理を実行することで、第１のカウント数を取得することができる。例えば、図３（ａ）の例では、図６に示したように、変数ＫｅｙＣｏｕｎｔとして、「キーワードなし、１、２、３」に対応して、「２、６、４、２」という値が取得される。また、選択コンテンツをカウント対象として図５の処理を実行することで、第２のカウント数を取得することができる。例えば、図３（ａ）、（ｃ）の例においては選択コンテンツがコンテンツ４、５（アイコン３０２、３０３に対応）であるとすると、変数ＫｅｙＣｏｕｎｔとして、「キーワードなし、１、２、３」に対応して、「０、２、１、１」という値が取得される。なお、第１、第２のカウント数の取得の手法は図５に示した態様に限定されない。図２（ｂ）のデータを参照して、「キーワードなし」のものも含めてコンテンツ数をカウントしてもよい。
【００４８】
図７は、ヒストグラム３０６（図３（ｂ）、（ｄ））において、キーワード未設定のコンテンツにキーワードを付与する処理を示すフローチャートである。この処理は、情報処理装置の電源がオンにされると開始され、所定時間ごとに実行される。
【００４９】
まず、ステップＳ７０１では、ＣＰＵ１０６は、キーボード１０４やＰＤ１０５に対するユーザによる操作を監視し、操作があればそれを受け付ける。ユーザ操作が受け付けられた場合は、処理はステップＳ７０２に進む。ステップＳ７０２では、ＣＰＵ１０６は、ユーザ操作が、キーワード未設定コンテンツに対するヒストグラム３０６中のキーワード指定操作であるか否かを判別する。このキーワード指定操作は、例えば、キーワード未設定コンテンツに対するキーワード指定モードを設定する所定の操作に加えて、キーワード項目名３０７が表示されている領域をクリックする等の指定操作をすることである。
【００５０】
その判別の結果、ＣＰＵ１０６は、キーワード指定操作がない場合は、図７の処理を終了させる一方、キーワード指定操作があった場合は、キーワードが設定されていないコンテンツがあるか否かを判別する（ステップＳ７０３）。その判別の結果、ＣＰＵ１０６は、キーワード未設定のコンテンツがない場合は、図７の処理を終了させる。一方、キーワード未設定のコンテンツがある場合は、ＣＰＵ１０６は、当該キーワード未設定のコンテンツに対して、指定操作で指定された領域に該当するキーワードを設定して（ステップＳ７０４）、図７の処理を終了させる。
【００５１】
図３（ｂ）を例にとると、指定操作によってキーワード項目名３０７のうち「魚類」の表示領域をクリックすると、設定状態が「なし」であるコンテンツ７、８に対して「魚類」が設定される。
【００５２】
このように、キーワード未設定のコンテンツにキーワードを容易に設定することができる。なお、設定するキーワードの指定方法は例示したものに限定されるものではなく、また、一度に複数のキーワードを指定できるようにしてもよい。なお、ＣＰＵ１０６は、キーワード未設定であったコンテンツをキーワードの設定後も記憶しておき、キーワード設定後にも同じ手法で他のキーワードをさらに追加して設定できるようにしてもよい。
【００５３】
図８は、ヒストグラム３０６（図３（ｂ）、（ｄ））において、選択中のコンテンツにキーワードを付与する処理を示すフローチャートである。この処理は、情報処理装置の電源がオンにされると開始され、所定時間ごとに実行される。
【００５４】
まず、ステップＳ８０１では、ＣＰＵ１０６は、キーボード１０４やＰＤ１０５に対するユーザによる操作を監視し、操作があればそれを受け付ける。ユーザ操作が受け付けられた場合は、処理はステップＳ８０２に進む。ステップＳ８０２では、ＣＰＵ１０６は、ユーザ操作が、選択コンテンツに対するヒストグラム３０６中のキーワード指定操作であるか否かを判別する。このキーワード指定操作は、例えば、選択コンテンツに対するキーワード指定モードを設定する所定の操作に加えて、キーワード項目名３０７が表示されている領域をクリックする等の指定操作をすることである。
【００５５】
その判別の結果、ＣＰＵ１０６は、キーワード指定操作がない場合は、図８の処理を終了させる。一方、キーワード指定操作があった場合は、ＣＰＵ１０６は、選択コンテンツに対して、指定操作で指定された領域に該当するキーワードを設定して（ステップＳ８０３）、図８の処理を終了させる。
【００５６】
図３（ｂ）を例にとると、指定操作によってキーワード項目名３０７のうち「魚類」の表示領域をクリックすると、選択中のコンテンツであるコンテンツ４、５に対して「魚類」が追加して設定される。その結果、コンテンツ４、５の双方に対して、「生物」に加えて「魚類」が設定されることになる。なお、選択コンテンツがキーワード未設定であった場合は、キーワードが新たに設定されることになる。
【００５７】
このように、選択コンテンツにキーワードを容易に設定することができる。なお、設定するキーワードの指定方法は例示したものに限定されるものではなく、また、一度に複数のキーワードを指定できるようにしてもよい。なお、ＣＰＵ１０６は、選択コンテンツをキーワードの設定後も記憶しておき、キーワード設定後にも同じ手法で他のキーワードをさらに追加して設定できるようにしてもよい。また、図７による手法と図８による手法とを交互に行えるようにしてもよい。
【００５８】
図９は、ヒストグラム３０６（図３（ｂ）、（ｄ））において、表示されている棒の移動操作によってキーワードを付与する処理を示すフローチャートである。この処理は、情報処理装置の電源がオンにされると開始され、所定時間ごとに実行される。
【００５９】
まず、ステップＳ９０１では、ＣＰＵ１０６は、キーボード１０４やＰＤ１０５に対するユーザによる操作を監視し、操作があればそれを受け付ける。ユーザ操作が受け付けられた場合は、処理はステップＳ９０２に進む。ステップＳ９０２では、ＣＰＵ１０６は、ユーザ操作が、ヒストグラム３０６中の棒のドラッグドロップの操作であるか否かを判別する。本実施の形態では、オブジェクトである棒の移動操作としてドラッグドロップ操作を例示する。例えば、ユーザは、ＰＤ１０５としてのマウスカーソルで棒３０９〜３１２のうち所望の棒をドラッグし、所望の位置にドロップする。従って、ステップＳ９０２では、ドラッグした棒をドロップする操作があった場合に、ドラッグドロップ操作があったと判別される。
【００６０】
その判別の結果、ＣＰＵ１０６は、ドラッグドロップ操作がない場合は、図９の処理を終了させる。一方、ドラッグドロップ操作があった場合は、ＣＰＵ１０６は、ドロップ位置が、ドラッグした棒以外の棒の表示領域または、ヒストグラム３０６の表示領域以外の領域（枠の外側領域）のいずれかの領域であるかを判別する（ステップＳ９０３）。その判別の結果、ＣＰＵ１０６は、ドロップ位置が、上記いずれかの領域である場合は、処理をステップＳ９０４に進める一方、ドロップ位置が上記いずれの領域でもない場合は、図９の処理を終了させる。以降、図１０も適宜参照して説明する。
【００６１】
図１０（ａ）、（ｂ）、（ｃ）は、ドラッグドロップ操作によるキーワードの設定状態の変化を示すヒストグラムである。各図において左側に示すような操作を行うと右側に示すような設定状態に変わる。例えば、棒３０９をドラッグして、異なる棒３１２にドロップしたり（図１０（ａ））、ヒストグラム３０６の表示枠の外側（所定の領域）にドロップしたりした場合は、処理はステップＳ９０５に進む。一方、棒をドラッグして同じ棒にドロップしたり、ヒストグラム３０６の表示枠の内側にドロップしたりした場合は、処理は終了する。
【００６２】
ステップＳ９０４では、ＣＰＵ１０６は、ドロップ位置の棒に対応しているキーワードを持つコンテンツのコンテンツＩＤをリストとして取得する。次に、ＣＰＵ１０６は、ドロップ位置が、キーワード「なし」の棒（図３（ｂ）の例では棒３０９）以外の棒の表示領域であるか否かを判別する。その判別の結果、ＣＰＵ１０６は、ドロップ位置が、キーワード「なし」の棒以外の棒の表示領域である場合は、処理をステップＳ９０６に進める一方、ドロップ位置が、キーワード「なし」の棒以外の棒の表示領域でない場合は、処理をステップＳ９０９に進める。
【００６３】
例えば、棒３１２をドラッグして棒３１０にドロップした場合（図１０（ｃ））は、処理はステップＳ９０６に進む。一方、棒３１２をドラッグして棒３０９にドロップしたり、ヒストグラム３０６の表示枠の外側にドロップしたりした場合（図１０（ｂ））は、処理はステップＳ９０９に進む。
【００６４】
ステップＳ９０６では、ドラッグ元の棒に対応するキーワードが設定されていたコンテンツ、すなわちステップＳ９０４にて取得したコンテンツＩＤリストのコンテンツに対して、ドラッグ元の棒に対応するキーワードの設定を解除する。次に、ステップＳ９０７では、上記取得したコンテンツＩＤリストのコンテンツに対して、ドロップ位置の棒に対応するキーワードを設定する。ただし、既に同じキーワードが設定済みである場合は、重複するのでキーワードの設定はなされない。
【００６５】
例えば、図３（ｂ）の状態を例にとると、図１０（ａ）に示すように、棒３０９をドラッグして棒３１２にドロップした場合、設定が「なし」であったコンテンツ７、８に対して、棒３１２に対応する「魚類」が新たに設定される。また、図１０（ｃ）に示すように、棒３１２をドラッグして棒３１０にドロップした場合、「魚類」が設定されていたコンテンツ５、６に対して、「魚類」の設定が解除される。しかし、棒３１０に対応する「生物」はコンテンツ５、６のいずれにも既に設定済みであるので、「生物」の追加設定はなされない。このように、ステップＳ９０６、Ｓ９０７の処理により、ドラッグ元の棒に対応するキーワードからドロップ位置の棒に対応するキーワードへと、簡単にキーワードの設定変更（切り替え）を行える。
【００６６】
ステップＳ９０９では、ＣＰＵ１０６は、ステップＳ９０４にて取得したコンテンツＩＤリストのコンテンツに対して、全てのキーワードの設定を解除する。例えば、図３（ｂ）の状態を例にとり、図１０（ｂ）に示すように、棒３１２をドラッグして棒３０９にドロップしたり、ヒストグラム３０６の表示枠の外側にドロップしたりした場合を考える。これらの場合は、コンテンツ５、６に設定されていた全てのキーワード（いずれも「生物」及び「魚類」）の設定が解除される。なお、ステップＳ９０９において、全てのキーワードを削除するではなく、ドラッグ元の棒に対応しているキーワードだけを設定解除するようにしてもよい。この場合は、図１０（ｂ）の例でいえば、コンテンツ５、６に設定されていたキーワードのうち、「魚類」だけが設定解除され、「生物」は残される。
【００６７】
なお、ステップＳ９０６、Ｓ９０９では、ドラッグ元の棒に対応しているキーワードが「なし」であった場合は、ドラッグ元の棒に対応するコンテンツに対するキーワードの設定解除はなされない。
【００６８】
次に、ステップＳ９０８では、ＣＰＵ１０６は、ヒストグラム３０６を再表示させる。例えば、図１０（ａ）、（ｂ）、（ｃ）において、左側の図に示す移動操作を行うことで、右側に示した図のように、ヒストグラム３０６の表示が更新される。このようにして、ヒストグラム３０６の画面操作によって、キーワードの付け直しや削除を容易に行える。
【００６９】
本実施の形態によれば、ＣＰＵ１０６は、対象コンテンツについて、キーワード別コンテンツ数（第１のカウント数）を求めると共に、選択コンテンツについて、キーワード別コンテンツ数（第２のカウント数）を求める。ヒストグラム３０６において、キーワード毎に縦軸に各棒３０９〜３１２が表示される。各棒は、第１のカウント数に応じた長さで示され、選択コンテンツに該当する部分は第２のカウント数に応じた長さで且つ他の領域とは異なる態様（灰色）で示される。これにより、選択コンテンツの検索キー（キーワード）の設定状態を、選択コンテンツを含めたコンテンツにおける設定状態との対比において認識しやすくすることができる。すなわち、選択されたコンテンツに設定済みのキーワードが、全体のコンテンツに設定されたキーワードに対してどのような割合になるのかを直ちに視覚的に認識できる。それにより、ユーザは、分類や検索をしやすいキーワードを、選択コンテンツに対して設定したり、解除したりすることができ、適切な検索キーの設定を行いやすくなる。
【００７０】
また、ヒストグラム３０６において、棒の移動操作によって、キーワードの追加設定、設定解除、一括による追加設定や設定解除を簡単に行える。
【００７１】
なお、図９において、棒の移動操作の態様はドラッグドロップに限るものではない。例えば、移動前の棒を指定する操作と、移動先の棒または領域を指定する操作の組み合わせであってもよい。
【００７２】
図１１で、変形例を説明する。図１１（ａ）は、ヒストグラム表示処理の変形例を示すフローチャートである。図１１（ａ）において、ステップＳ１００１が追加されており、その他のステップは図４と同様である。
【００７３】
図４の例では、棒の移動操作の場合を除けば、コンテンツの選択操作（ステップＳ４０２）があった場合に限り、ヒストグラム３０６の更新（ステップＳ４０８）が実行される構成であった。しかし、図１１（ａ）に示すように、ステップＳ４０２でコンテンツの選択操作がないと判別された場合であっても、ステップＳ１００１で、コンテンツ検索操作があれば、対象コンテンツの変更がなされるので、ステップＳ４０３に処理を進めるようにしてもよい。この構成であれば、コンテンツの選択操作またはコンテンツ検索操作のいずれかがあればヒストグラム３０６の更新が実行される。また、このほか、ヒストグラム３０６の更新は、図９で一部を例示したが、キーワードの新たな設定やユーザの指示などに応じて適宜実行されるようにしてもよい。また、絞込み検索した状態を階層構造のパンくずリストで表示し、検索結果の表示一覧を切り替えると、それに連動して対象コンテンツを切り替えると共に、ヒストグラム３０６も更新されるようにしてもよい。このようにすることで、絞込み範囲に応じたキーワードの偏りを意識して、絞り込みでの検索がしやすいキーワードを設定できる。
【００７４】
なお、本実施の形態では、キーワードが設定された、対象コンテンツの数（第１のカウント数）と選択コンテンツの数（第２のカウント数）とを、検索キー毎に識別できる所定の態様として、ヒストグラム３０６を示した。しかしこれ以外の態様で表示してもよい。図１１（ｂ）、（ｃ）、（ｃ）に、キーワード毎のコンテンツ数を表示する変形例を示す。
【００７５】
例えば、図１１（ｂ）、（ｃ）に例示するように、オブジェクトの長さに代えて、コンテンツ数に応じた面積または大きさのオブジェクトを表示するか、コンテンツ数に応じた数のオブジェクトを表示してもよい。
【００７６】
すなわち、図１１（ｂ）に示すように、円グラフを表示させ、各々の領域を色分け等で区別してもよい。例えば、図３（ｂ）の棒３１０、選択コンテンツ対応部３１０ａに対応するオブジェクトとして、欠円１３１０、選択コンテンツ対応部１３１０ａ等が表示される。また、図１１（ｃ）に示すように、棒に変えて円や矩形等のカウント数に応じた数の図形を積み重ねて表示してもよい。あるいは、図１１（ｄ）に示すように、折れ線グラフで表示してもよい。例えば、図１１（ｄ）において、実線が対象コンテンツの数、点線が、対象コンテンツの数から選択コンテンツの数を引いた数を示している。
【００７７】
なお、本実施の形態では、検索キーとしてキーワードを例示したが、これに限られず、マーク等の図形であってもよい。
【００７８】
（他の実施形態）
本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）をネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムコードを読み出して実行する処理である。この場合、そのプログラム、及び該プログラムを記憶した記憶媒体は本発明を構成することになる。
【００７９】
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。
【符号の説明】
【００８０】
１０６  ＣＰＵ
３０６  ヒストグラム
３０９〜３１２  棒
【図１】
2016126649.tif 000003
【図２】
2016126649.tif 000004
【図３】
2016126649.tif 000005
【図４】
2016126649.tif 000006
【図５】
2016126649.tif 000007
【図６】
2016126649.tif 000008
【図７】
2016126649.tif 000009
【図８】
2016126649.tif 000010
【図９】
2016126649.tif 000011
【図１０】
2016126649.tif 000012
【図１１】
2016126649.tif 000013