(57)【要約】【課題】検索システムを効率よく管理するための方法を提供する。【解決手段】ネットワークを介して提供されるコンテンツから、検索者が指定したキーワードに関連するコンテンツを検索するコンテンツ管理システムにおいて、コンテンツの登録の要求を受けた場合、前記登録されるコンテンツの作成者によって作成された、コンテンツ中に含まれる少なくとも１個以上の部分文字列を抽出し、前記抽出された文字列を関連する用語の候補として提示し、前記提示された文字列から作成者によって選択された文字列と、作成者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録し、前記作成者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、前記設定された関連性を登録し、前記登録された関連する用語と、前記登録されるコンテンツを紐付ける。【選択図】図２
2010039989.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して提供されるコンテンツから、検索者が指定したキーワードに関連するコンテンツを検索するコンテンツ管理システムにおいて、
コンテンツの登録の要求を受けた場合、
前記登録されるコンテンツの作成者によって作成された、コンテンツ中に含まれる少なくとも１個以上の部分文字列を抽出し、
前記抽出された文字列を関連する用語の候補として提示し、
前記提示された文字列から作成者によって選択された文字列と、作成者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録し、
前記作成者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、
前記設定された関連性を登録し、
前記登録された関連する用語と、前記登録されるコンテンツを紐付けることを特徴とするコンテンツ管理システム。
【請求項２】
コンテンツの閲覧の要求を受けた場合、
前記紐付けられた用語を提示し、
前記提示された文字列から閲覧者によって選択された文字列と、前記閲覧者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録し、
前記閲覧者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、
前記設定された関連性を登録し、
前記登録された関連する用語と、前記閲覧されるコンテンツを紐付けることを特徴とする請求項１に記載のコンテンツ管理システム。
【請求項３】
前記設定された文字列の関連性は、前記コンテンツの登録又は閲覧時に登録されることを特徴とする請求項１又は２に記載のコンテンツ管理システム。
【請求項４】
前記コンテンツに関連する用語を登録する場合、
前記関連する用語間の、言語的意味における距離を算出し、
前記算出された言語的距離が所定の閾値より遠い場合に、前記作成者又は前記閲覧者に対して、登録する用語が関連するか否かを確認し、
前記作成者又は前記閲覧者が関連することを確認した場合は、前記算出された言語的距離を補正することを特徴とする請求項１から３のいずれか一つに記載のコンテンツ管理システム。
【請求項５】
前記作成者又は前記閲覧者による、前記関連する用語間の説明の入力を受け付け、
前記入力された用語間の説明をタグの関連情報として登録することを特徴とする請求項１から４のいずれか一つに記載のコンテンツ管理システム。
【請求項６】
前記コンテンツ中に含まれる文字列を解析し、前記解析結果を前記関連する用語として提示することを特徴とする請求項１から５のいずれか一つに記載のコンテンツ管理システム。
【請求項７】
既に登録されているコンテンツに関連する用語と共に出現する文字列の出現頻度情報によって、関連性が高い用語を抽出することを特徴とする請求項１から６のいずれか一つに記載のコンテンツ管理システム。
【請求項８】
既に登録されているコンテンツに関連する用語の出現頻度によって、関連性が低い用語を抽出し、
前記抽出された関連性が低い用語は候補として提示しないことを特徴とする請求項１から７のいずれか一つに記載のコンテンツ管理システム。
【請求項９】
ネットワークを介して提供されるコンテンツから、検索者が指定したキーワードに関連するコンテンツを検索するシステムにおけるコンテンツ管理方法であって、
コンテンツの登録の要求を受けた場合、
前記登録されるコンテンツの作成者によって作成されたコンテンツ中に含まれる少なくとも１個以上の部分文字列を抽出する部分文字列抽出ステップと、
前記抽出された文字列を、関連する用語の候補として提示するタグ候補提供ステップと、
前記提示された文字列から、作成者によって選択された文字列と、作成者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録する作成者タグ登録ステップと、
前記作成者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定して、前記設定された関連性を登録するタグ関連登録ステップと、
前記登録された複数の関連する用語と、前記登録されるコンテンツを紐付けるコンテンツタグ登録ステップと、を含むことを特徴とするコンテンツ管理方法。
【請求項１０】
コンテンツの閲覧の要求を受け付けた場合に、
前記紐付けられた文字列を提示するコンテンツタグ候補提供ステップと、
前記提示された文字列から、閲覧者によって選択された文字列と、前記コンテンツを閲覧した閲覧者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録する閲覧者タグ登録ステップと、
前記閲覧者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、
前記設定された関連性を登録するタグ関連登録ステップと、
前記登録された複数の関連する用語と、前記登録されるコンテンツを紐付けるコンテンツタグ登録ステップと、を含むことを特徴とする請求項９に記載のコンテンツ管理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ装置を用いてコンテンツの検索を提供するコンテンツ管理システムに関し、特に、情報検索のために使用される関連情報（タグ情報等）を登録するための技術に関する。
【背景技術】
【０００２】
近年、情報化社会の急速な進展に伴い、オフィスだけでなく、日常生活の上でも情報過多の状態となっている。また、パーソナルコンピュータなどの計算機やネットワークの普及により、業務の効率化を目的として、オフィス内で文書を共有し、その上でユーザが所望する文書を迅速かつ的確に提供できるよう、文書やコンテンツの管理を行うことが重要視されている。ワープロソフトなどで作成された電子データ（文書）を共有する文書管理システムが既に実用化され、高速かつ効率的に所望の文書を検索できる仕組みが提供されている。
【０００３】
このため、大量の情報から求める情報を探し出すための手段に「検索技術」が用いられている。検索技術としては、ある用語（検索キーワード）を含む文書を検索する全文検索（例えば、特許文献１参照。）、同意語や異表記語など入力した用語（検索キーワード）との関係性が高い用語も含めて検索するシソーラス検索（例えば、特許文献２参照。）、入力した文章に類似する文書を検索する概念検索（例えば、特許文献３参照。）などがある。
【０００４】
また、シソーラス検索を発展させた技術として、例えば、特許文献３に示す連想検索という技術（以下、従来技術１という）が公知となっている。この従来技術１の特徴は、予めある用語に意味的に関連する用語を関連用語として情報記憶装置に格納しておき、検索時にその関連用語を含めて検索することにより、ユーザの意図により適合した高精度な検索が可能になることにある。従来技術１と前記シソーラス検索技術との相違点は、シソーラス検索では言語的に関係性が高い用語を関連用語としてシソーラス辞書に登録するのに対し、例えば、業界名という用語や業界に所属する企業名といった本来言語的には関連性が薄いと思われる用語についても、ユーザの要求に合わせて、予め関連後として登録設定しておくことができる点にある。
【０００５】
さらに、関連性が高い用語を高精度かつ自動的に抽出する方法としては、例えば、下記特許文献５に示す技術（以下、従来技術２という）が公開されている。従来技術２は、既に蓄積されている文書群からユーザが指定した分野における重要度の高い用語を抽出し、抽出した用語間の関連度を統計情報から計算することにより、関連性が高い用語を自動的にユーザに提示することができる点を特徴としている。
【特許文献１】特開２００２−１３２７８９号公報
【特許文献２】特開平９−２５９１３９号公報
【特許文献３】特開２００２−７３６８１号公報
【特許文献４】特開２００４−１１０３８６号公報
【特許文献５】特開２００３−１６７８９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
全文検索といったＷｅｂ検索エンジンなどに適用されている検索技術では、そもそも、検索を行うユーザが検索キーワードを適切に設定しないと所望の情報にたどり着けないという問題がある。例えば、一般的な用語を検索キーワードとして一つ設定しただけでは、大量の文書が検索され、結果的に欲しい情報を得ることが困難になることがある。また、これを回避するために、関連する用語を合わせて検索キーワードとして設定することがあるが、そもそも、関連する用語を連想することが難しい場面も存在する。さらに、従来から存在する概念であるが新しく定義された用語（以下、新語とする）で検索しても、所望の情報がヒットすることはほとんどない。例えば、「空気が読めない」という概念が従来から存在していて、「ＫＹ」という同じ概念で新しい用語が出現したとする。この場合、「ＫＹ」をキーワードとして設定して検索実行しても「空気が読めない」という情報を得ることは困難である。
【０００７】
前述した問題を解消する技術として、従来技術１に従来技術２を適用することが考えられる。しかしながら、従来技術１と従来技術２とは、それぞれ以下のような問題点がある。
【０００８】
まず、従来技術１では、システムを構築する人またはシステムを管理する人が、予めある用語と関連する用語を整理し、検索用の辞書として登録しておくことが前提となる。
この前提の下では、当該システムを提供する前段階における準備のコスト、開発コスト及びそれらの手間が多大に必要になる。
【０００９】
また、システム開発者または管理者が想定する範囲では正確な検索が可能であるが、構築後に発生した新しい用語（新語）には対応できない。この課題は、システム管理者が新語を認識するたびに検索用の辞書を更新すればよいが、そのための手間とコストは膨大であり、全ての新語の発生をシステム管理者が把握することも難しい。例えば、従来技術１では、文書に関連する企業名を関連付けることができるとしているが、昨今の社会情勢を鑑みるに、企業の合併、吸収や企業ブランドイメージ向上目的などにより、企業名が変更されることは少なくない。この場合、検索対象となる企業名が変更されるたびに、システム管理者がその情報を検索用の辞書に反映することは現実的であるとはいえない。
【００１０】
さらに、この前提では、システム開発者や管理者が想定しない関連用語について、連想検索を実施すること自体が不可能である。本来、ある用語について連想する用語は、ユーザ各々が保持している知識に基づいて連想することになる。しかし、各ユーザが保持する知識背景や興味の対象は異なっていることが多く、各ユーザの知識体系を全て網羅することは事実上不可能ともいえる。例えば、「日立」という企業について連想する用語は、ある人は「メーカー」「電化製品」という一般的な文字列であるが、別の人は、「信頼性」「大企業」「野武士的」という企業の評価に関する用語であることも考えられる。逆に、「製造業」という業種に「日立」が関連するという設定を行なった場合でも、ある人は、「情報システム業」から「日立」を連想することもある。しかし、「情報システム業」と「日立」との関連付ける辞書設定は存在しないため、連想検索が有効に機能しない。
【００１１】
つまり、従来技術１における問題点は、実際には検索用の辞書データを高頻度で更新する必要があるにも関わらず、その実現方法が明確になっていないことにある。つまり、時間の経過と共に変化する語句に対応する処理が存在しないため、ある用語とそれを関連付ける用語とのミスマッチが生じ、結果的に検索精度の劣化につながる。このことから、従来技術１の利用範囲は限定的な情報であり、従来技術をもって利用するユーザが必要な情報を迅速かつ適切に提供することができるシステムを構築できるとはいえない。
【００１２】
次に、従来技術２では、ユーザが指定した分野として格納されている文書群から重要度の高い用語を抽出して関連性が高い用語を提供できるとしている。
【００１３】
特定の分野において出現する用語というのはある程度限定的であるともいえるが、ある分野に用いられる用語の集合が永遠に固定されているといえないのが実情である。例えば、「Ｗｅｂ」という分野では、「サーバ」や「ブラウザ」といった用語を用いた文書は多く存在することが想定されるため、従来技術２を適用することにより、それらの用語についての関連性を紐付けることは可能である。しかし、例えば「マッシュアップ」という言葉が「Ｗｅｂ」に関連した新語として出てきたとした場合、「マッシュアップ」自体が新しい用語であるため、「マッシュアップ」を用いた文書自体が存在する可能性は低い。つまり、従来技術２を用いて、新語との関連性の高い用語を抽出したいと考えた場合、ユーザが指定した分野に新語を含む文書が登録されていない場合には関連性の高い用語を抽出すること自体が困難である。
【００１４】
また、本技術は、格納済みの文書に存在する用語の統計情報に基づいて関連する用語を抽出する技術であるため、もし、新語を含む文書が存在したとしても、その新語の出現頻度が低ければ、その新語に関連する重要な語句をシステムが認識することができないという問題がある。例えば、先ほどの「マッシュアップ」という用語を用いた文書が１件だけあり、かつ、その文書の中で１回しか使用されていないような場合、重要語リストに存在する統計情報から得られる重みは小さくならざるを得ない。例えば、特許文献５では、一定範囲内で他の複数の重要語と共起出現する回数をカウントするとしているが、そもそも、共起する回数はそれぞれ１回とならざるを得ないため、本来必要な関連性の高い語句が抽出できる可能性は低い。また、特許文献５では、予め定義しておいた上下階層関係による関連語句の抽出方法についても開示されているが、新語であるという特徴を持つため、上下階層関係が既に定義されていることも考えにくい。
【００１５】
さらに、格納済みの文書内に存在する用語に基づいて関連する用語を抽出するという処理が前提になっているため、電子化された文書以外のコンテンツ（例えば、画像など）に適用することは不可能である。
【００１６】
すなわち、従来技術２を適用したとしても、新語など時間の経過と共に変化する語彙に対応することができず、電子化文書が存在しないと有効に機能しない。このことから、従来技術１に従来技術２を適用したとしても、結果として、ユーザが求める用語を十分提供できない。
【００１７】
本発明の目的は、Ｗｅｂなどに存在するコンテンツに対し、検索を実行するユーザに対して、検索キーワードの連想をシステムが補助することにより高効率かつ高精度な検索方法の提供を行うこと、および、当該検索システムを効率よく管理するための方法および装置を実現することにある。
【課題を解決するための手段】
【００１８】
上記課題を解決するため、本発明では、ネットワークを介して提供されるコンテンツから、検索者が指定したキーワードに関連するコンテンツを検索するコンテンツ管理システムにおいて、コンテンツの登録の要求を受けた場合、前記登録されるコンテンツの作成者によって作成された、コンテンツ中に含まれる少なくとも１個以上の部分文字列を抽出し、前記抽出された文字列を関連する用語の候補として提示し、前記提示された文字列から作成者によって選択された文字列と、作成者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録し、前記作成者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、前記設定された関連性を登録し、前記登録された関連する用語と、前記登録されるコンテンツを紐付けることを特徴とする。
【００１９】
また、コンテンツの閲覧の要求を受けた場合、前記紐付けられた用語を提示し、前記提示された文字列から閲覧者によって選択された文字列と、前記閲覧者が入力した文字列との少なくとも一方を、コンテンツに関連する用語として登録し、前記閲覧者によって文字列が複数登録された場合、前記登録された複数の文字列の関連性を設定し、前記設定された関連性を登録し、前記登録された関連する用語と、前記閲覧されるコンテンツを紐付けることを特徴とする。
【００２０】
さらに、前記設定された文字列の関連性は、前記コンテンツの登録又は閲覧時に登録されることを特徴とする。
【発明の効果】
【００２１】
本発明によれば、ユーザの協力を得ることによってコンテンツに対するタグ設定の追加または更新を行うことができるだけでなく、タグ間の関連性についても自動的に設定、更新することができる。これにより、ユーザが利用するたびに検索精度が向上する検索システムの実現が可能になる。さらに、システム開発者やシステム管理者による事前の準備も必要なくなるため、システムに対する管理・運用コストの低減と手間の削減が可能になる。
【００２２】
すなわち、利用者自らコンテンツに関連するタグを設定し、設定されたタグの関連性をシステム側で登録することによって、前述した従来技術１における事前準備におけるコストと手間が必要になるという課題を解決することができる。
【００２３】
また、利用者自らコンテンツに関連するキーワードを設定するステップを有することによって、新語であっても利用者自らタグ設定することで、新語登録における課題を解決することができる。
【００２４】
また、他の人が設定したタグ情報により、検索ユーザは自分が発想できなかったキーワードに気付くことができ、検索キーワードに関する利用者の発想をシステム的に支援することができる。
【００２５】
また、ユーザが設定したタグ情報とその関連を蓄積することによって、従来技術２における新語に対する関連語を抽出するという課題を解決することができる。
【００２６】
また、登録または閲覧したユーザによって設定されたタグ情報と前記登録されたタグ情報とそのタグ間の関連情報を用いた検索ができるので、従来技術２における文書以外のコンテンツに対応できないという課題を解決して、画像、映像および音声のコンテンツにも対応することができる。
【発明を実施するための最良の形態】
【００２７】
（第一の実施の形態）
以下、本発明を適用した第一の実施の形態について、図面を用いて説明する。
【００２８】
はじめに、第一の実施の形態におけるシステムの全体構成について説明する。
【００２９】
図１は、第一の実施の形態におけるシステムの全体構成を示す図である。
【００３０】
図１に示す通り、第一の実施の形態システムは、タグ管理サブシステム１０１、情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ受信サーバ１０４、コンテンツ配信クライアント１０５およびネットワーク１０６を備える。
【００３１】
タグ管理サブシステム１０１は、ＣＰＵ、メモリおよびインターフェースを備えるコンピュータで、ネットワーク１０６を介して情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５から送信された特定コンテンツに関連する用語を含むデータ（以下、タグ情報とする）を取得する。また、タグ管理サブシステム１０１は、取得したタグ情報を解析し、検索時に必要となるコンテンツ関連タグデータを作成する。さらに、タグ管理サブシステム１０１は、ネットワーク１０６を介して情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５と通信し、タグ情報検索に関するリクエスト処理およびデータの送受信処理を行う。
【００３２】
情報検索サーバ１０２は、ＣＰＵ、メモリおよびインターフェースを備えるコンピュータで、情報検索クライアント１０３からの検索コマンドを受け取り、検索コマンドによって指定される条件に適合する情報を検索し、検索結果データを要求元の情報検索クライアントに返信する。
【００３３】
情報検索クライアント１０３は、ＣＰＵ、メモリおよびインターフェースを備えるコンピュータで、ユーザが対話的に検索条件を指定するための画面をディスプレイ上に表示し、この画面上でユーザが指定した検索条件をタグ管理サブシステム１０１および情報検索サーバ１０２にとって解釈可能なコマンドの形式に変換し、変換されたコマンドをネットワーク１０６を介して、タグ管理サブシステム１０１または情報検索サーバ１０２に送信する。前述した通り、タグ管理サブシステム１０１または情報検索サーバ１０２が、検索コマンドに対応する処理を行ない、検索結果データを返信してくると、情報検索クライアント１０３は、受け取った検索結果を画面によってユーザに提示する。また、ユーザが閲覧したコンテンツにタグ情報が設定された場合、情報検索クライアント１０３は、設定されたタグ情報をタグ管理サブシステム１０１に登録コマンドと共に送信する。なお、図１では１台のコンピュータ１０３を情報検索クライアントとして使用する構成例を示したが、情報検索クライアントを２台以上とする構成としてもよい。
【００３４】
コンテンツ受信サーバ１０４は、ＣＰＵ、メモリおよびインターフェースを備えるコンピュータで、受信したコンテンツの保存・管理を行う。コンテンツ受信サーバ１０４はすでに公知であるため、その構成は詳述しない。なお、図１では１台のコンピュータ１０４をコンテンツサーバとして使用する構成例を示したが、コンテンツサーバを２台以上とする構成としてもよい。
【００３５】
コンテンツ配信クライアント１０５は、ＣＰＵ、メモリおよびインターフェースを備えるコンピュータで、前記コンテンツを配信する。コンテンツ配信クライアント１０５はすでに公知であるため、その構成は詳述しない。ただし、コンテンツ配信時に登録を行なったユーザによって設定された関連する用語（タグ情報）を、タグ管理サブシステム１０１に送信することが従来のコンテンツ配信サーバとは異なる。なお、図１では１台のコンピュータをコンテンツ配信クライアント１０５として使用する構成例を示したが、コンテンツ配信クライアント１０５を２台以上とする構成としてもよい。
【００３６】
なお、図１では、情報検索サーバ１０２およびコンテンツ受信サーバ１０４を別個のコンピュータを使用する構成としたが、情報検索サーバ１０２およびコンテンツ受信サーバ１０４を同一のコンピュータ上で実行する構成としてもよい。
【００３７】
さらに、図１では、情報検索クライアント１０３およびコンテンツ配信クライアント１０５を別個のコンピュータを使用する構成としたが、情報検索クライアント１０３およびコンテンツ配信クライアント１０５を同一のコンピュータ上で実行する構成としてもよい。
【００３８】
ネットワーク１０６は、ローカルエリアネットワークおよび／または広域エリアネットワークによって構成され、タグ管理サブシステム１０１、情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ受信サーバ１０４、コンテンツ配信クライアント１０５が各種データやコマンドを送受信するために用いられる。ここで、図１ではタグ管理サブシステム１０１から情報検索サーバ１０２等に対してデータを送受信するためにネットワーク１０６を使用するが、ネットワーク１０６の代わりに磁気ディスク、光磁気ディスク、追記型光磁気ディスクなどの可搬型記憶媒体を使用する構成としてもよい。または、タグ管理サブシステム１０１と情報検索サーバ１０２とを１台のコンピュータ上に実装し、内部のバスを介してデータを転送する構成としてもよい。さらに、図１では情報検索サーバ１０２と情報検索クライアント１０３とを別個のコンピュータを使用する構成としたが、１個以上の情報検索クライアント１０３を情報検索サーバ１０２と同一のコンピュータで実行する構成としてもよい。
【００３９】
次に、第一の実施の形態におけるタグ管理サブシステム１０１について説明する。
【００４０】
図２に、タグ管理サブシステム１０１のシステム構成を示す。
【００４１】
タグ管理サブシステム１０１は、ディスプレイ１３０、キーボードやマウスなどの入力装置１４０、主メモリ１１０、磁気ディスク装置１２０、通信制御装置１５０、システムバスおよび中央演算装置を備えるコンピュータである。
【００４２】
ディスプレイ１３０は、タグ管理サブシステム１０１における処理の実行状況を表示するために使用される。入力装置１４０は、タグ情報登録処理の実行などを指示するコマンドを入力するために使用される。主メモリ１１０は、タグ管理サブシステム１０１による処理を行うための各種プログラムおよび一時的なデータを保持するために使用される。磁気ディスク装置１２０は、タグ管理サブシステム１０１が作成するインデックスファイル、知識属性テーブル、プロファイルテーブルを格納するために使用される。通信制御装置１６０は、ネットワーク１０６を介して前記情報検索サーバ１０２または前記情報検索クライアント１０３と通信し、タグ情報登録またはタグ情報検索に関するリクエストおよびデータを送受信するために使用される。
【００４３】
主メモリ１１０中には、システム制御プログラムＰ１０、タグ管理制御プログラムＰ１１、タグ属性情報登録プログラムＰ１１１、コンテンツタグ管理情報登録プログラムＰ１１２、タグ関連情報登録プログラムＰ１１３、タグ関連度算出プログラムＰ１１４、検索条件式解析プログラムＰ１１５、タグ検索プログラムＰ１１６、検索結果取得プログラムＰ１１７が格納されると共に、ワークエリアが確保される。これらのプログラムは、磁気ディスクや光磁気ディスクなどの可搬型記憶媒体に格納され、ここから読み出され、磁気ディスク装置１２０へインストールされる。タグ管理サブシステム１０１起動時に、システム制御プログラムＰ１０が起動し、これらのプログラムは磁気ディスク装置１２０から読み出され、主メモリ１１０へ格納される。
【００４４】
磁気ディスク装置１２０中には、タグ属性テーブル格納領域Ｄ１１１、コンテンツタグ管理情報格納領域Ｄ１１２、タグ関連テーブル格納領域Ｄ１１３、インデックスファイル格納領域Ｄ１１４および各種プログラム格納領域が確保される。
【００４５】
システム制御プログラムＰ１０は、周辺機器との間のデータの入出力など、コンピュータ上でタグ管理サブシステム１０１を構成する各種プログラムを実行するための基本機能を提供する。
【００４６】
タグ管理制御プログラムＰ１１は、コマンド解析プログラムＰ１１０、タグ属性情報登録プログラムＰ１１１、コンテンツタグ管理情報登録プログラムＰ１１２、タグ関連情報登録プログラムＰ１１３、タグ関連度算出プログラムＰ１１４、検索条件式解析プログラムＰ１１５、タグ検索プログラムＰ１１６、検索結果取得プログラムＰ１１７を起動および実行し、前記情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ配信クライアント１０５との間でネットワーク１０６を介してこれらのプログラムによって生成されたデータを送受信する。
【００４７】
コマンド解析プログラムＰ１１０は、情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ配信クライアント１０５または入力装置１４０から受信したコマンドを解析する。
【００４８】
タグ属性情報登録プログラムＰ１１１は、前記情報検索クライアント１０３やコンテンツ配信クライアント１０５から送信されたタグ情報をタグ属性格納領域Ｄ１１１に格納する。
【００４９】
コンテンツタグ管理情報登録プログラムＰ１１２は、前記タグ属性情報登録プログラムＰ１１１において格納されたタグ情報と、前記情報検索クライアント１０３またはコンテンツ配信クライアント１０５において紐付けられたコンテンツ情報とを関連付け、コンテンツタグ管理情報格納領域Ｄ１１２へ登録する。
【００５０】
タグ関連情報登録プログラムＰ１１３は、タグ関連度算出プログラムＰ１１４と共に構成される。本プログラムは、前記タグ関連度算出プログラムＰ１１４にて算出された関連度情報に基づいて、タグ関連テーブルＤ１１３に格納されているタグ間の関連度を示す情報を更新する。
【００５１】
タグ関連度算出プログラムＰ１１４は、前記タグ属性情報登録プログラムＰ１１１で更新されたタグ情報に基づいて、新規または既存のタグ情報との関連度を算出する。
【００５２】
検索条件式解析プログラムＰ１１５は、前記情報検索クライアント１０３やコンテンツ配信クライアント１０５、または情報検索サーバ１０２から受信した検索リクエスト中に含まれる検索条件式を解析し、タグ検索プログラムＰ１１６によって直接検索可能な条件指定に翻訳する。
【００５３】
タグ検索プログラムＰ１１６は、検索条件式解析プログラムＰ１１５によって翻訳された条件指定に従って、タグ属性テーブル格納領域Ｄ１１１、コンテンツタグ管理情報格納領域Ｄ１１２、タグ関連テーブル格納領域Ｄ１１３の全てまたはいずれかの組合せにおいて検索を実行し、得られた検索データをワークエリアに格納する。
【００５４】
検索結果取得プログラムＰ１１７は、タグ検索プログラムＰ１１６によって取得された検索結果データを関連度の降順にソートし、この関連度の情報を要求元に転送する。
【００５５】
次に、第一の実施の形態におけるタグ情報処理の概略手順を図１から図５を用いて説明する。なお、図３はタグ情報処理における概略手順を示すアクティビティダイアグラムである。
【００５６】
入力装置１４０からのサーバ起動コマンド等により、タグ管理制御プログラムＰ１１が起動されると、タグ管理制御プログラムＰ１１は、情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ配信クライアント１０５または入力装置１４０からコマンドを受信する（ステップＳ１１１）。
【００５７】
情報検索サーバ１０２、情報検索クライアント１０３、コンテンツ配信クライアント１０５または入力装置１４０からコマンドを受信すると、受信したコマンドを解析する（ステップＳ１１２）。ステップＳ１１２では、受信したコマンドを入力として、コマンド解析プログラムＰ１１０を実行する。コマンド解析プログラムＰ１１０では、受信したコマンドを解析する。
【００５８】
ステップＳ１１３では、ステップＳ１１２による解析結果に基づいて、コマンドの種別を判定し、判定された種別に対応する処理に分岐する。ステップＳ１１３では、判定されたコマンドが、情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５のいずれかから送信されたタグ登録コマンドである場合、ステップＳ１１４のタグ登録処理に分岐する。また、判定されたコマンドが情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５のいずれかから送信されたタグ検索コマンドである場合、ステップＳ１１５のタグ検索処理に分岐する。なお、前記分岐先の処理が終了した後は、再びステップＳ１１１に戻って処理を続行する。ただし、受信されたコマンドが入力装置１４０において入力されたサーバの停止を指示するコマンドである場合は、本プログラムの処理を終了する。
【００５９】
ステップＳ１１４は、第一の実施の形態におけるタグ登録処理を行うステップである。ステップＳ１１４では、情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５のいずれかから送信されてきたタグ情報をワークエリアに格納し、タグ属性情報登録プログラムＰ１１１、コンテンツタグ管理情報登録プログラムＰ１１２、タグ関連情報登録プログラムＰ１１３を順次実行する。以下、ステップＳ１１４における各種プログラムの処理手順について順次説明する。
【００６０】
まず、ステップＳ１１４における最初の処理であるタグ属性情報登録プログラムＰ１１１について図４を用いて説明する。なお、図４は、タグ属性情報登録プログラムＰ１１１の処理手順を示すアクティビティダイアグラムである。
【００６１】
タグ属性情報登録プログラムＰ１１１は、ワークエリアに格納されたタグ情報を順次呼び出し、ステップＳ１１４１１からステップＳ１１４１７の処理を実行する。
【００６２】
まず、ステップＳ１１４１１では、データの通し番号の初期値を付与する。データの通し番号を格納する変数をｎとし、ステップＳ１１４では、ｎ＝１を設定する。
【００６３】
ステップＳ１１４１２では、ワークエリアに格納されているタグ情報のうち、ｎ番目のデータを読み出す。
【００６４】
ステップＳ１１４１３では、読み出されたｎ番目のデータの内容に基づいてタグ属性テーブル格納領域Ｄ１１１を走査し、該ｎ番目のデータがタグ属性テーブル格納領域に存在するか否かを判定する。
【００６５】
ステップＳ１１４１４では、前記ステップＳ１１４１３において確認されたｎ番目のデータがタグ属性テーブル格納領域Ｄ１１１に存在するかの情報に基づいて、それぞれに対応する処理に分岐する。ステップＳ１１４１４で、タグ属性テーブル格納領域Ｄ１１１に該ｎ番目のデータが存在する場合は、Ｓ１１４１８の処理に遷移し、タグ属性テーブル格納領域Ｄ１１１に該ｎ番目のデータが存在しない場合は、Ｓ１１４１５の処理に遷移する。
【００６６】
ステップＳ１１４１５では、ｎ番目のタグ情報をタグ属性テーブル格納領域Ｄ１１１に格納する。
【００６７】
ステップＳ１１４１８では、タグ属性テーブル格納領域Ｄ１１１に存在したｎ番目のデータの頻度に”１”を加え、頻度を更新する。
【００６８】
ステップＳ１１４１６では、ワークエリアに格納されている次のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。ステップ１１４１６では、次のタグ情報が存在する場合はステップＳ１１４１７からなる処理に分岐する。一方、次のタグ情報が存在しない場合は、本タグ属性情報登録プログラムＰ１１１を終了する。
【００６９】
ステップＳ１１４１７では、データの通し番号を格納する変数ｎの値に”１”を加算する。ステップＳ１１４１７が終了すると、ステップＳ１１４１２に戻り、次のタグ情報について処理を継続する。
【００７０】
タグ属性情報登録プログラムＰ１１１の処理が終了すると、コンテンツタグ管理情報登録プログラムＰ１１２を実行する。コンテンツタグ管理情報登録プログラムＰ１１２では、ワークエリアに格納された一つ以上のタグ情報と関連するコンテンツを関連付け、コンテンツタグ管理情報格納エリアＤ１１２に格納する。
【００７１】
コンテンツタグ管理情報登録プログラムＰ１１２が終了すると、ステップＳ１１４の最後の処理として、タグ関連情報登録プログラムＰ１１３を実行する。図５はタグ関連情報登録プログラムＰ１１３の処理手順を示す図である。以下、タグ関連度算出プログラムＰ１１４の処理手順について、図５を用いて説明する。
【００７２】
タグ関連情報登録プログラムＰ１１３では、ワークエリアに格納されたタグ情報が二つ以上存在する場合、ステップＳ１１４３０１からステップＳ１１４３１３の処理を実行する。なお、ワークエリアに格納されたタグ情報が存在しない、または一つのタグ情報しか存在しない場合は、ステップＳ１１４３０１からステップＳ１１４３１３の処理を実行せず、タグ関連情報登録プログラムＰ１１３を終了する。
【００７３】
まず、ステップＳ１１４３０１では、データの通し番号の初期値を付与する。データの通し番号を格納する変数をｉとし、本ステップでは、ｉ＝１を設定する。
【００７４】
ステップＳ１１４３０２では、ワークエリアに格納されているタグ情報のうち、ｉ番目のデータを読み出す。
【００７５】
ステップＳ１１４３０３では、ｉ番目のデータとの関連情報を設定すべき対象のデータの通し番号の初期値を付与する。データの通し番号を格納する変数をｊとし、本ステップでは、ｊ＝ｉ＋１を設定する。
【００７６】
ステップＳ１１４３０４では、ワークエリアに格納されているタグ情報のうち、ｊ番目のデータを読み出す。
【００７７】
ステップＳ１１４３０５では、読み出したｉ番目のデータとｊ番目のデータとの内容に基づいて、タグ関連テーブル格納領域Ｄ１１３を走査し、ｉ番目のデータおよびｊ番目のデータがタグ関連テーブル格納領域Ｄ１１３に存在しているか否かを判定する。
【００７８】
ステップＳ１１４３０６では、前記ステップＳ１１４３０５において確認したｉ番目のデータとｊ番目のデータとのタグ関連情報がタグ関連テーブル格納領域Ｄ１１３に存在するか否かの情報に基づいて、それぞれに対応する処理に分岐する。本ステップでは、タグ関連テーブル格納領域にｉ番目のデータおよびｊ番目のデータが存在する場合は、Ｓ１１４３０７の処理に遷移し、ｉ番目のデータまたはｊ番目のデータが存在しない場合は、Ｓ１１４３０８の処理に遷移する。
【００７９】
ステップＳ１１４３０７では、タグ関連度算出プログラムＰ１１４を起動し、タグ関連テーブル格納領域Ｄ１１３に格納されている関連度情報に基づいて、タグ間の関連度を再計算する。再計算された関連度は、前記関連度情報と共にワークエリアに格納される。
【００８０】
ステップＳ１１４３０８では、タグ間の関連度を固定の初期値に設定する。設定された関連度は、タグ関連テーブル格納領域Ｄ１１３に格納されている関連度情報と共にワークエリアに格納される。なお、タグ間の関連度の初期設定について固定の値を設定することとしたが、タグ関連度算出プログラムＰ１１４を利用することによって、適切な値に設定してもよい。
【００８１】
ステップＳ１１４３０７またはステップＳ１１４３０８の処理が終了すると、ステップＳ１１４３０９で、ワークエリアに格納されていた関連度情報に基づいてタグ関連テーブル格納領域Ｄ１１３を更新する。
【００８２】
ステップＳ１１４３１０では、ワークエリアに格納されているｊ＋１番目のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。ステップＳ１１４３１０は、ｊ＋１番目のデータが存在する場合はステップＳ１１４３１１の処理に分岐する。一方、ｊ＋１番目のタグ情報が存在しない場合は、ステップＳ１１４３１２の処理に分岐する。
【００８３】
ステップＳ１１４３１１では、データの通し番号を格納する変数ｊの値に”１”を加算する。ステップＳ１１４３１１が終了すると、ステップＳ１１４３０４に戻り、次のタグ情報についての処理を継続する。
【００８４】
ステップＳ１１４３１２では、ワークエリアに格納されているｉ＋１番目のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。ステップＳ１１４３１２では、ｉ＋１番目のデータが存在する場合はステップＳ１１４３１３からなる処理に分岐する。一方、ｉ＋１番目のタグ情報が存在しない場合は、タグ関連情報登録プログラムＰ１１３を終了する。
【００８５】
ステップＳ１１４３１３では、データの通し番号を格納する変数ｉの値に”１”を加算する。ステップＳ１１４３１３が終了すると、ステップＳ１１４３０２に戻り、次のタグ情報についての処理を継続する。
【００８６】
ステップＳ１１５は、第一の実施の形態におけるタグ検索処理を行うステップである。ステップＳ１１５では、情報検索サーバ１０２、情報検索クライアント１０３またはコンテンツ配信クライアント１０５のいずれかから送信されたリクエストデータに基づいて、検索条件式解析プログラムＰ１１５、タグ検索プログラムＰ１１６、検索結果取得プログラムＰ１１７が順次実行される。以下、ステップＳ１１５の処理手順について説明する。
【００８７】
まず、ステップＳ１１５では、検索条件式解析プログラムＰ１１５を実行し、検索リクエスト中で指定されている検索条件を解析し、指定された検索条件をタグ検索プログラムＰ１１６で直接処理可能な条件指定に変換する。次に、検索条件式解析プログラムＰ１１５で生成した条件指定を入力値として、タグ検索プログラムＰ１１６を実行し、生成した条件指定を満たすタグ情報の集合を検索する。
【００８８】
最後に、検索結果取得プログラムＰ１１７を起動し、タグ検索プログラムＰ１１６で導出されたタグ情報またはタグ関連情報を関連度の降順にソートし、検索結果データとしてワークエリアに格納する。その後、前記検索結果データの集合をリクエスト元に転送する。
【００８９】
なお、ステップＳ１１５では、格納した検索結果データ集合の全てをリクエスト元に転送したが、ワークエリアに格納した検索結果データ集合を識別する検索結果識別子を生成し、その検索結果識別子のみを要求元に返信してもよい。ただし、検索結果識別子を返信する場合は、リクエスト元からの検索結果識別子を含めた問合せの内容に応じて、検索結果データの一部または全体をワークエリアから抽出し、抽出された検索結果をリクエスト元に転送する処理を追加する。
【００９０】
次に、第一の実施の形態における情報検索サーバ１０２について説明する。
【００９１】
第一の実施の形態における情報検索サーバ１０２のシステム構成は、例えば特許文献１や特許文献２に開示されている構成と同様である。ただし、第一の実施の形態における情報検索サーバ１０２の処理手順に、タグ情報による検索手順が追加されている点が異なる。
【００９２】
まず、第一の実施の形態における情報検索サーバ１０２のシステム構成例を図６に示す。情報検索サーバ１０２における主メモリ１１０には、検索条件式解析プログラムＰ１２１やコンテンツ検索プログラムＰ１２２、検索結果取得プログラムＰ１２３、タグ情報検索条件生成プログラムＰ１２４およびタグ情報検索結果取得プログラムＰ１２５が格納されている。
【００９３】
また、磁気ディスク装置１２０には、インデックスファイル格納領域Ｄ１２０、コンテンツ格納領域Ｄ１２１、各種プログラム格納領域およびタグ情報検索結果格納領域Ｄ１２２が含まれる。
【００９４】
検索条件式解析プログラムＰ１２１は、情報検索クライアント１０３から受信した検索リクエスト中に含まれる検索条件式を解析し、コンテンツ検索プログラムＰ１２２で直接検索可能な条件指定に変換する。ただし、検索リクエスト中に含まれる検索条件式がタグ情報による検索を指定していれば、タグ情報検索条件生成プログラムＰ１２４を呼び出し、検索条件式をタグ管理サブシステム１０１が直接検索可能な条件指定に変換した上で、タグ管理サブシステム１０１に対してコンテンツ検索を要求し、返信されたコンテンツ検索結果情報に基づいて、タグ情報検索結果取得プログラムＰ１２５を実行し、ワークエリアにコンテンツ検索結果情報を格納する。
【００９５】
コンテンツ検索プログラムＰ１２２は、検索条件式解析プログラムＰ１２１によって変換された条件指定に基づいて、インデックスファイル格納領域Ｄ１２１に格納されているインデックスを検索し、得られた検索結果をワークエリアに格納する。
【００９６】
検索結果取得プログラムＰ１２３は、コンテンツ検索プログラムＰ１２２またはタグ情報検索結果取得プログラムＰ１２５によって取得された検索結果データをワークエリアから取得し、要求元の情報検索クライアント１０３に転送する。
【００９７】
次に、第一の実施の形態における検索処理の手順について説明する。
【００９８】
図７は、情報検索サーバ１０２における検索処理手順を示すアクティビティダイアグラムである。なお、検索キーワードによる属性検索技術や全文検索技術は、既に公知であるので、その詳細な説明は省略する。
【００９９】
入力装置１４０からのサーバ起動コマンドなどにより、情報検索制御プログラムＰ１２が起動されると、情報検索制御プログラムＰ１２は、情報検索クライアント１０３からリクエストを受信して検索処理を行うループに入る（ステップＳ１２０１）。
【０１００】
ステップＳ１２０１から始まるループでは、情報検索クライアント１０３から来たコンテンツ検索のリクエスト種別を判定する処理（ステップＳ１２０２）と、判定した種別に対応する処理に分岐する処理（ステップＳ１２０３）とを繰り返す。
【０１０１】
ステップＳ１２０２およびステップＳ１２０３では、受信したリクエストの種別を判定する。その判定の結果、リクエストがコンテンツ検索リクエスト（特定の検索条件を満たすコンテンツ群の検索を求めるリクエスト）である場合、ステップＳ１２０４からステップＳ１２１１の処理に分岐する。一方、リクエストが検索結果問合せリクエスト（特定の検索処理の結果を問合せるリクエスト）である場合、ステップＳ１２１２の処理に分岐する。さらに、リクエストがコンテンツ転送リクエスト（指定されたコンテンツの転送を求めるリクエスト）である場合、ステップＳ１２１３の処理に分岐する。
【０１０２】
分岐先の処理が終了した後は、再びステップＳ１２０１に戻ってループを継続する。なお、ステップＳ１２０２およびステップＳ１２０３において、入力装置１４０から入力されたコマンドがサーバの停止を指示するコマンドであると判定した場合は、情報検索制御プログラムＰ１２を終了する。
【０１０３】
ステップＳ１２０４では、検索条件式解析プログラムＰ１２１を実行し、コンテンツ検索リクエスト中で指定されている検索条件を解析する。指定された検索条件が属性検索または全文検索など、タグ情報に基づいた検索ではない場合は、検索条件がコンテンツ検索プログラムＰ１２２で直接処理可能な条件指定に変換される（ステップＳ１２０５）。
【０１０４】
そして、変換された条件指定に基づいて、コンテンツ検索プログラムＰ１２２を実行し（ステップＳ１２０６）、当該条件による検索結果を取得し、ワークエリアに格納する（ステップＳ１２０７）。なお、コンテンツ検索プログラムＰ１２２の処理（ステップＳ１２０６）における属性検索技術や全文検索技術は、公知であるため、その詳細な説明は省略する。
【０１０５】
また、コンテンツ検索リクエスト中で指定されている検索条件に、タグ情報に基づいた検索が指定されている場合は、タグ管理サブシステム１０１が解釈可能なリクエストに変換するため、タグ情報検索条件生成プログラムＰ１２４を呼び出す（ステップＳ１２０８）。その後、タグ管理サブシステム１０１に対して、タグ情報検索条件生成プログラムＰ１２４で生成したリクエストを送信し（ステップＳ１２０９）、タグ管理サブシステム１０１から受け取った検索結果データをワークエリアに格納する（ステップＳ１２１０）。
【０１０６】
次に、ステップＳ１２１１では、検索結果取得プログラムＰ１２３を起動し、ステップＳ１２０７またはステップＳ１２１０でワークエリアに格納された検索結果データを取得し、この検索結果データ集合または検索結果データ集合を識別する検索結果識別子を情報検索クライアント１０３に返信する。
【０１０７】
ステップＳ１２１２では、問合せの内容に応じて、ステップＳ１２１１で求めた検索結果データの一部または全体をワークエリアから抽出し、抽出された検索結果データを情報検索クライアント１０３に転送する。
【０１０８】
ステップＳ１２１３では、コンテンツ転送リクエストによて指定されているコンテンツ（複数のコンテンツが指定されている場合は、指定されているコンテンツすべて）のコンテンツデータをコンテンツ格納領域Ｄ１２１から抽出し、抽出されたコンテンツデータを情報検索クライアント１０３に転送する。
【０１０９】
次に、第一の実施の形態における情報検索クライアント１０３について図８を用いて説明する。
【０１１０】
図８は、情報検索クライアント１０３のシステム構成を示す図である。情報検索クライアント１０３は、ディスプレイ１３０、キーボードやマウスなどの入力装置１４０、主メモリ１１０、磁気ディスク装置１２０、通信制御装置１５０、システムバスおよび中央演算装置などを備えるコンピュータである。
【０１１１】
ディスプレイ１３０は、ユーザが対話的に検索条件を入力するためや検索結果などを表示させるために使用される。入力装置１４０は、ユーザが検索条件の入力や検索処理の実行などを指示するコマンドを入力するために使用される。主メモリ１１０は、情報検索クライアント１０３による処理を行うための各種プログラムおよび一時的なデータを保持する。磁気ディスク装置１２０は、検索結果として得られたコンテンツ、タグ情報およびその他のデータを格納する。通信制御装置１５０は、ネットワーク１０６を介して前記タグ管理サブシステム１０１および前記情報検索サーバ１０２と通信し、タグ情報登録、タグ情報検索またはコンテンツ検索に関するリクエストおよびデータを送受信する。
【０１１２】
主メモリ１１０は、システム制御プログラムＰ１０、検索クライアント制御プログラムＰ１３、タグ検索条件入力プログラムＰ１３１、コンテンツ検索条件入力プログラムＰ１３２、検索結果表示プログラムＰ１３３、コンテンツタグ入力プログラムＰ１３４、そしてワークエリアを含む。これらのプログラムは、磁気ディスクや光磁気ディスクなどの可搬型記憶媒体に格納され、この記憶媒体から読み出され、磁気ディスク装置１２０へインストールされる。検索クライアント制御プログラムＰ１３の起動時に、システム制御プログラムＰ１０によって、これらのプログラムが磁気ディスク装置１２０から読み出され、主メモリ１１０へ格納される。
【０１１３】
磁気ディスク装置１２０中には、検索結果データ格納領域Ｄ１３１および各種プログラム格納領域が確保される。
【０１１４】
システム制御プログラムＰ１０は、周辺機器との間のデータの入出力など、コンピュータ上で情報検索クライアント１０３を構成する各種プログラムを実行するための基本機能を提供する。
【０１１５】
検索クライアント制御プログラムＰ１３は、タグ検索条件入力プログラムＰ１３１、コンテンツ検索条件入力プログラムＰ１３２、検索結果表示プログラムＰ１３３およびコンテンツタグ入力プログラムＰ１３４の起動および実行の制御を行い、また、ネットワーク１０６を介してタグ管理サブシステム１０１および情報検索サーバ１０２との間でタグ検索またはコンテンツ検索に関するリクエストおよびデータの送受信を行う。
【０１１６】
なお、ワークエリアは、プログラムの実行時に一時的に必要となるデータを記憶するために用いられる。
【０１１７】
次に、第一の実施の形態における情報検索クライアント１０３の動作手順について説明する。
【０１１８】
図９は、情報検索クライアント１０３の動作手順を示すアクティビティダイアグラムである。
【０１１９】
入力装置１４０から入力されるクライアント起動コマンドなどにより、検索クライアント制御プログラムＰ１３が起動されると、検索クライアント制御プログラムＰ１３は、ユーザが対話的に検索条件を入力する画面をディスプレイ１３０に表示する（ステップＳ１３０１）。
【０１２０】
次に、ステップＳ１３０２で、ユーザから検索を指示するコマンドを受け取って、情報検索クライアント１０３における検索処理を行うループに入る。このループは、入力装置１４０からクライアントの停止を指示するコマンドが入力されるまで継続する。
【０１２１】
まず、ステップＳ１３０３では、ステップＳ１３０２において受信したユーザが指示したコマンドの種別を判定する。
【０１２２】
次に、ステップＳ１３０４において、ステップＳ１３０３で判定したコマンド種別に対応した分岐を行う。すなわち、ユーザの指示がタグ情報の検索を求める指示である場合は、以下に記すステップＳ１３０５からステップＳ１３０７までの処理に分岐する。一方、ユーザの指示がコンテンツ情報の検索を求める指示である場合は、ステップＳ１３０８からステップＳ１３１０までの処理に分岐する。分岐先の処理（ステップＳ１３０５からステップＳ１３０７、またはステップＳ１３０８からステップＳ１３１０の）が終了すると、ステップＳ１３１１に遷移する。
【０１２３】
また、ユーザの指示がタグ情報の登録を求める指示である場合は、以下に記すステップＳ１３１２とステップＳ１３１３との処理に分岐する。なお、受信したユーザの指示コマンドが、入力装置１４０にて入力したクライアントの停止を指示するコマンドである場合は、検索クライアント制御プログラムＰ１３における処理を終了する。
【０１２４】
ステップＳ１３０５では、タグ検索条件入力プログラムＰ１３１を実行し、ユーザとの対話により検索条件が入力され、タグ検索コマンドで指定された検索条件をタグ管理サブシステム１０１が解釈可能なタグ情報検索リクエストに変換する。
【０１２５】
ステップＳ１３０６では、ネットワーク１０６を介してステップＳ１３０５で変換されたタグ情報検索リクエストをタグ管理サブシステム１０１に送信する。
【０１２６】
ステップＳ１３０７では、タグ情報検索リクエストの返信としてタグ管理サブシステム１０１から検索結果データ集合の返信を待ち、返信された検索結果データ集合または検索結果識別子を受信する。受信した検索結果データ集合または検索結果識別子は、検索結果データ格納領域に格納される。
【０１２７】
ステップＳ１３０８では、コンテンツ検索条件入力プログラムＰ１３２を実行し、ユーザとの対話により検索条件が入力され、コンテンツ検索コマンドで指定された検索条件が情報検索サーバ１０２によって解釈可能なコンテンツ検索リクエストに変換される。
【０１２８】
ステップＳ１３０９では、ネットワーク１０６を介してステップＳ１３０８で変換されたコンテンツ検索リクエストを情報検索サーバ１０２に送信する。
【０１２９】
ステップＳ１３１０では、コンテンツ検索リクエストの返信として情報検索サーバ１０２から検索結果データ集合の返信を待ち、返信された検索結果データ集合または該検索結果識別子を受信する。
【０１３０】
ステップＳ１３１１では、ステップＳ１３０７またはステップＳ１３１０にて受信した検索結果データ集合または検索結果識別子を入力として検索結果表示プログラムＰ１３３を実行し、ユーザと対話しつつ検索結果データの問合せおよび画面表示を実行する。なお、本ステップの処理が終了すると、ステップＳ１３０１に戻り、Ｓ１３０１〜Ｓ１３１３のループを再開する。
【０１３１】
ステップＳ１３１２では、コンテンツタグ入力プログラムＰ１３４を実行し、ユーザとの対話によりコンテンツに関連するタグ情報を取得し、取得したタグ情報がタグ管理サブシステム１０１によって解釈可能なタグ情報登録コマンドに変換される。
【０１３２】
ステップＳ１３１３では、Ｓ１３１２で変換されたタグ情報登録コマンドが、ネットワーク１０６を介してタグ管理サブシステム１０１に転送される。なお、本ステップの処理が終了すると、ステップＳ１３０１に戻り、Ｓ１３０１からＳ１３１３までのループを再開する。
【０１３３】
次に、情報検索クライアント１０３で実行されるステップＳ１３１１の詳細である、検索結果表示プログラムＰ１３３について、図１０を用いて説明する。
【０１３４】
検索結果表示プログラムＰ１３３は、検索クライアント制御プログラムＰ１３から起動されると、検索結果とユーザからの指示入力欄とを含む画面をディスプレイ１３０上に表示する（ステップＳ１３１１０１）。以降、ユーザから検索結果表示の終了を指示するコマンドが入力されるまで、ステップＳ１３１１０３からステップＳ１３１１１６までの処理を繰り返し実行する。
【０１３５】
まず、ステップＳ１３１１０２では、ステップＳ１３１１０１で画面上にユーザが指定した指示内容を読み込む。
【０１３６】
次に、ステップＳ１３１１０３では、指示を入力したユーザの指示内容の種別を判定する。
【０１３７】
次に、ステップＳ１３１１０４では、ステップＳ１３１１０３にて判定された指示内容の種別に対応した分岐を行う。すなわち、指示内容が検出タグ数の表示を求める指示である場合はステップＳ１３１１０５およびステップＳ１３１１０６の処理に分岐し、指示内容が検出したタグ情報リストまたはタグ識別子リストの表示を求める指示である場合はステップＳ１３１１０７およびステップＳ１３１１０８の処理に分岐し、指示内容が検出コンテンツ数の表示を求める指示である場合はステップＳ１３１１０９およびステップＳ１３１１１０の処理に分岐し、指示内容が検出したコンテンツの識別子リスト表示を求める指示である場合はステップＳ１３１１１１およびステップＳ１３１１１２の処理に分岐し、指示内容がコンテンツ内容表示を求める指示である場合には、ステップＳ１３１１１３からステップＳ１３１１１６までの処理に分岐する。
【０１３８】
各分岐先の処理が終了すると、ステップＳ１３１１０１に戻り、ループを再開する。なお、指示内容が検索結果表示の終了指示コマンドである場合は、本検索結果表示プログラムＰ１３３を終了する。
【０１３９】
ステップＳ１３１１０５では、ステップＳ１３１１０３の指示内容に基づいて、検出タグ数を問い合わせるための検出タグ数問合せリクエストを作成し、作成された検出タグ数問合せリクエストをタグ管理サブシステム１０１に送信する。次に、ステップＳ１３１１０６では、送信した検出タグ数問合せリクエストに対応してタグ管理サブシステム１０１から転送されてきた検索タグ数を受信し、検索タグ数の値をディスプレイ１３０に表示する。
【０１４０】
ステップＳ１３１１０７では、検出タグ群のタグ情報リストを問い合わせるためのタグ情報問合せリクエストを作成し、作成されたタグ情報問合せリクエストをタグ管理サブシステム１０１に送信する。次に、ステップＳ１３１１０８では、送信したタグ情報問合せリクエストに対応してタグ管理サブシステム１０１から転送されてきたタグ情報の集合を受信し、タグ情報の集合およびタグ情報の集合に含まれるタグ識別子群を検索結果データ格納領域Ｄ１３１に格納し、ディスプレイ１３０にタグ情報群をリストによって表示する。
【０１４１】
ステップＳ１３１１０９では、検出コンテンツ数を問い合わせるための検出コンテンツ数問合せリクエストを作成し、作成された検出コンテンツ数問合せリクエストを情報検索サーバ１０２に送信する。次に、ステップＳ１３１１１０では、送信した検出コンテンツ数問合せリクエストに対応して情報検索サーバ１０２から転送されてきた検索コンテンツ数を受信し、受信した検索コンテンツ数の値をディスプレイ１３０に表示する。
【０１４２】
ステップＳ１３１１１１では、検出コンテンツ群のコンテンツ識別子リストを問い合わせるためのコンテンツ識別子問合せリクエストを作成し、コンテンツ識別子問合せリクエストを情報検索サーバ１０２に送信する。次に、ステップＳ１３１１１２では、コンテンツ識別子問合せリクエストに対応して情報検索サーバ１０２から転送されたコンテンツ識別子の集合を受信し、コンテンツ識別子の集合に含まれるコンテンツ識別子群を検索結果データ格納領域Ｄ１３１に格納し、ディスプレイ１３０にコンテンツ識別子群をリストによって表示する。
【０１４３】
ステップＳ１３１１１３では、表示すべきコンテンツを特定するコンテンツ識別子を引数に設定する。次に、ステップＳ１３１１１４では、コンテンツを特定するコンテンツ識別子によって識別されるコンテンツデータを得るためのコンテンツ転送リクエストを作成し、コンテンツ転送リクエストを情報検索サーバ１０２に送信する。次に、ステップＳ１３１１１５では、コンテンツ転送リクエストに対応して情報検索サーバ１０２から転送されてきたコンテンツデータを受信し、転送されたコンテンツデータを検索結果格納領域Ｄ１３１に格納する。次に、ステップＳ１３１１１６では、格納されたコンテンツデータを書式化してディスプレイ１３０に表示する。このとき、コンテンツデータ内に存在するタグ文字列などに対して、反転や着色などのハイライト表示処理を加えてもよい。
【０１４４】
次に、第一の実施の形態におけるコンテンツ配信クライアント１０５について図１１を用いて説明する。
【０１４５】
図１１は、コンテンツ配信クライアント１０５のシステム構成を示す図である。コンテンツ配信クライアント１０５は、ディスプレイ１３０、キーボードやマウスなどの入力装置１４０、主メモリ１１０、磁気ディスク装置１２０、通信制御装置１５０、システムバスおよび中央演算装置などを備えるコンピュータである。
【０１４６】
ディスプレイ１３０は、ユーザが対話的に登録するコンテンツやタグ検索条件を入力するための画面やタグ検索結果などを表示するために使用する。入力装置１４０は、コンテンツの指定や入力、検索条件の入力、検索処理の実行などを指示するコマンドの入力などに使用される。主メモリ１１０は、本クライアントによる処理を行うための各種プログラムおよび一時的なデータを保持する。磁気ディスク装置１２０は、検索結果として得られたタグ情報およびその他のデータを格納する。通信制御装置１６０は、ネットワーク１０６を介してタグ管理サブシステム１０１およびコンテンツ受信サーバ１０４と通信し、タグ情報登録、タグ情報検索またはコンテンツ登録に関するリクエストおよびデータを送受信する。
【０１４７】
主メモリ１１０は、システム制御プログラムＰ１０、配信クライアント制御プログラムＰ１５、タグ検索条件入力プログラムＰ１５１、タグ検索結果表示プログラムＰ１５２、コンテンツ入力プログラムＰ１５３、コンテンツタグ入力プログラムＰ１５４、コンテンツタグ候補抽出プログラムＰ１５５を格納する。これらのプログラムは、磁気ディスクや光磁気ディスクなどの可搬型記憶媒体に格納され、記憶媒体から読み出されたプログラムは、磁気ディスク装置１２０へインストールされる。配信クライアント制御プログラムＰ１５の起動時に、システム制御プログラムＰ１０によって、これらのプログラムが磁気ディスク装置１２０から読み出され、主メモリ１１０へ格納される。また、主メモリ１１０は、ワークエリアを含む。
【０１４８】
磁気ディスク装置１２０は、検索結果データ格納領域Ｄ１５１および各種プログラム格納領域を含む。
【０１４９】
システム制御プログラムＰ１０は、周辺機器との間のデータの入出力など、コンピュータ上で本クライアントを構成する各種プログラムを実行するための基本機能を提供する。
【０１５０】
配信クライアント制御プログラムＰ１５は、タグ検索条件入力プログラムＰ１５１、タグ検索結果表示プログラムＰ１５２、コンテンツ入力プログラムＰ１５３、コンテンツタグ入力プログラムＰ１５４の起動および実行の制御を行い、ネットワーク１０６を介してタグ管理サブシステム１０１およびコンテンツ受信サーバ１０４との間でタグ検索、タグ登録またはコンテンツ登録に関するリクエストおよびデータを送受信する。
【０１５１】
なお、ワークエリアは、プログラムの実行時に一時的に必要となるデータを記憶するために用いられる。
【０１５２】
次に、第一の実施の形態におけるコンテンツ配信クライアント１０５の動作手順について説明する。図１２はコンテンツ配信クライアント１０５の動作手順を示すアクティビティダイアグラムである。
【０１５３】
入力装置１４０から入力されるクライアント起動コマンドなどによって、コンテンツ配信クライアント制御プログラムＰ１５が起動されると、コンテンツ配信クライアント制御プログラムＰ１５は、ユーザが対話的に検索条件や登録対象となるコンテンツを入力する画面をディスプレイ１３０に表示する（ステップＳ１５０１）。
【０１５４】
次に、ステップＳ１５０２において、ユーザからタグ検索またはコンテンツ登録を指示するコマンドを受け取って、タグ検索またはコンテンツ登録を行うループを実行する。このループは、入力装置１４０からクライアントの停止を指示するコマンドが入力されるまで継続する。ステップＳ１５０２から始まるループは、ステップＳ１５０３からステップＳ１５１５までの処理を繰り返す。
【０１５５】
まず、ステップＳ１５０３では、ステップＳ１３０２で受信したユーザによって指示された内容の種別を判定する。
【０１５６】
次に、ステップＳ１５０４において、ステップＳ１５０３にて判定した種別に対応する分岐に遷移する。すなわち、ユーザからの指示内容がタグ情報の検索を求める指示である場合は、以下に記すステップＳ１５０５からステップＳ１５０９までの処理に分岐し、ユーザからの指示内容がコンテンツ情報の登録を求める指示である場合はステップＳ１５１０からステップＳ１５１５までの処理に分岐する。各分岐先の処理が終了すると、ステップＳ１５０２に戻り、ループを再実行する。なお、受信したユーザからの指示内容が入力装置１４０にて入力されたクライアントの停止を指示するコマンドである場合は、コンテンツ配信クライアント制御プログラムＰ１５を終了する。
【０１５７】
ステップＳ１５０５では、コンテンツタグ候補抽出プログラムＰ１５５を実行し、ユーザが入力したコンテンツデータに基づいてコンテンツに関連する特徴的な文字列（以下、コンテンツタグ候補文字列とする）を抽出する。
【０１５８】
ステップＳ１５０６では、タグ検索条件入力プログラムＰ１５１を実行し、ステップＳ１５０５にて抽出したコンテンツタグ候補文字列からの選択やユーザ自身が想定している文字列の入力などの検索条件を、ユーザとの対話処理によって取得し、得られた検索条件をタグ管理サブシステム１０１が解釈可能なタグ情報検索リクエストに変換する。
【０１５９】
ステップＳ１５０７では、タグ情報検索リクエストが、ネットワーク１０６を介してタグ管理サブシステム１０１に送信される。
【０１６０】
ステップＳ１５０８では、送信したタグ情報検索リクエストの返信として、タグ管理サブシステム１０１から検索結果データ集合が返信されるのを待ち、検索結果データ集合または検索結果識別子を受信する。
【０１６１】
ステップＳ１５０９では、ステップＳ１５０７にて受信した検索結果データ集合または検索結果識別子を入力として、タグ検索結果表示プログラムＰ１５２を実行し、ユーザと対話しつつ検索結果データの問合せおよび画面表示を行う。
【０１６２】
ステップＳ１５１０では、コンテンツ入力プログラムＰ１５３を実行し、ユーザが入力したコンテンツデータに基づいて、受信したコマンドをコンテンツ受信サーバ１０４が解釈可能なコンテンツ登録コマンドに変換する。
【０１６３】
ステップＳ１５１１では、ステップＳ１５１０で変換されたコンテンツ登録コマンドが、ネットワーク１０６を介してコンテンツ受信サーバ１０４に送信される。
【０１６４】
ステップＳ１５１２では、コンテンツ登録コマンドの返信として、コンテンツ受信サーバ１０４から登録コンテンツ識別子が返信されるのを待ち、受信した登録コンテンツ識別子をワークエリアに格納する。
【０１６５】
ステップＳ１５１３では、登録されたコンテンツに関連したタグ情報（以下、コンテンツタグとする）をユーザが指定したか否かを判定する。もし、一つ以上のタグ情報をコンテンツタグとして指定している場合は、ステップＳ１５１４およびステップＳ１５１５の処理に分岐する。ユーザがコンテンツタグを指定していない場合は、ステップＳ１５０２に戻り、ループを再開する。
【０１６６】
ステップＳ１５１４では、コンテンツタグ入力プログラムＰ１５４を実行し、指定された一つ以上のコンテンツタグとワークエリアに格納されている登録コンテンツ識別子とを関連付け、タグ管理サブシステム１０１が解釈可能なコンテンツタグ登録コマンドに変換する。
【０１６７】
ステップＳ１５１５では、ステップＳ１５１４にて生成されたコンテンツタグ登録コマンドがネットワーク１０６を介してタグ管理サブシステム１０１に転送される。なお、ステップＳ１５１５を終了するとステップＳ１５０２に戻り、ループを再開する。
【０１６８】
次に、第一の実施の形態におけるコンテンツ登録処理、コンテンツ参照処理およびコンテンツ検索処理の各々について、具体的な例を用いて説明する。
【０１６９】
まずは、コンテンツ登録処理の具体例について、タグ管理サブシステム１０１およびコンテンツ配信クライアント１０５の処理手順に基づいて、具体例を用いて説明する。
【０１７０】
図１３に示す画面２０１は、コンテンツ配信クライアント１０５においてコンテンツ登録に用いられる画面の一例である。
【０１７１】
画面２０１には、登録対象のコンテンツが入力される領域と、コンテンツに関連したタグ文字列が表示される領域とが存在する。また、「タグ候補検索」ボタンが設けられている。ユーザが、登録対象のコンテンツデータを入力した後に、このボタンを操作することによって、コンテンツに関連すると考えられるタグがリスト化されて表示される。なお、図１４は、登録対象のコンテンツと、関連するタグのリストとをそれぞれの画面領域に入力し、「タグ候補検索」ボタンが操作された後に表示される画面の例である。
【０１７２】
次に、コンテンツ入力と関連するタグ入力とを実施する処理の詳細を説明する。「タグ候補検索」ボタンが操作されると、コンテンツ配信クライアント１０５における配信制御プログラムＰ１５からタグ検索コマンドが発行され、ステップＳ１５０２からステップＳ１５０４の処理を経て、ステップＳ１５０５の処理が実行される。
【０１７３】
ステップＳ１５０５では、コンテンツデータ中に存在するコンテンツタグ候補文字列を抽出する処理を行う。コンテンツタグ候補文字列の抽出方法は、形態素解析の手法やテキスト中に含まれる単語ベクトルの類似度に基づいたベクトル空間モデル、または「特開２００３−１６０９２号公報」に記載されている技術を用いても構わない。
【０１７４】
図１５に示すテーブル２０２は、図１４におけるコンテンツタグ候補文字列の生成結果を示す一例である。
【０１７５】
なお、コンテンツタグ候補文字列をコンテンツ登録画面に表示する際には、テーブル２０２に示した部分文字列からより関連性が高いと考えられる文字列を取捨選択して表示することも考えられる。その方法としては、コンテンツ中で高頻度に出現する文字列を選択する方法、登録済みの文書にあまり存在しない文字列を選択する方法、文中の役割（主語、述語、目的語）などに応じて決定する方法、またはこれらの方式を組み合わせて文字列の重要度（重み値）を設定する方法など、さまざまな公知の方法が適用可能である。本具体例では、便宜上設定された各文字列の品詞が名詞で、かつ、出現頻度が２．０以上の文字列をコンテンツタグ候補文字列として設定する。
【０１７６】
なお、ステップＳ１５０５のみを実施する手順を具体例に示しているが、ステップＳ１５０５に加え、ステップＳ１５０５にて得られたコンテンツタグ候補文字列やユーザ自身が指定した文字列をキーワードとして、タグ管理サブシステム１０１に検索リクエストを送信し、関連するタグ情報を得るというステップＳ１５０６からステップ１５０８までの処理を実行してもよい。さらに、コンテンツの新規登録を主体として説明したが、コンテンツの新規登録ではなくコンテンツデータの更新を行う場合には、コンテンツに既に割当られているコンテンツ識別子を検索キーワードとしてタグ管理サブシステム１０１に検索リクエストを送信し、既に設定されているコンテンツタグ情報を取得する処理（ステップＳ１５０６からステップＳ１５０８）を実行してもよい。
【０１７７】
また、ステップＳ１５０５の処理に加えて、全文検索や概念検索などの検索技術において一般的に利用されているインデックスファイルを走査し、コンテンツ内で共起する確率の高い文字列をコンテンツタグ候補文字列として設定することや、コンテンツ内で共起する確率の低い文字列をコンテンツタグ候補文字列から除外するといった処理を実現してもよい。
【０１７８】
インデックスファイルＤ１２０は、情報検索サーバ１０２に格納されているため、ステップＳ１５０５にて得られたコンテンツタグ候補文字列やユーザ自身が指定した文字列をキーワードとして、コンテンツ配信クライアントから情報検索サーバ１０２に検索リクエストを送信し、共起する確率の高い新たな文字列の情報を得ることも可能である。ステップＳ１５０５にて得られたコンテンツタグ候補文字列やユーザ自身が指定した文字列の集合を検索リクエストとして情報検索サーバ１０２に送信し、共起する確率を獲得することも可能である。なお、インデックスファイルを走査することにより、コンテンツ内で共起する確率の高い文字列を得る方法やコンテンツ内で共起する確率を得る方法は既に公知であるため、詳細については記載しない。
【０１７９】
さらに、前述の新たな文字列情報の取得や、共起する確率の取得方法を二つ以上組み合せて、コンテンツタグ候補文字列を選定することも可能である。
【０１８０】
次に、ステップＳ１５０９において、ステップＳ１５０５を経て得られたコンテンツタグ候補文字列が画面に表示される（図１４）。ユーザは、表示されたコンテンツタグ候補文字列から選択するか、ユーザ自身が想定しているコンテンツタグ文字列を入力し、コンテンツの登録を行う。図１４に示す画面では「登録」ボタンが設けられており、この「登録」ボタンをユーザが操作することによって、以下のコンテンツ登録処理が実行される。なお、ここでは、図１６に示す通り、コンテンツタグ候補文字列「Ｗｅｂ」、「進化」、「ＨＴＭＬ」、「時代」のうち、「Ｗｅｂ」と「進化」とにチェックが入り、かつ、文字列が入る領域に「変遷」の文字列を入力する状態で「登録」ボタンを操作する場合について説明する。
【０１８１】
図１６に示す状態で「登録」ボタンが操作されると、コンテンツ配信クライアント１０５における配信制御プログラムＰ１５からコンテンツ登録コマンドが発行され、ステップＳ１５０２からステップＳ１５０４の処理を経て、ステップＳ１５１０の処理が実行される。
【０１８２】
まず、ステップＳ１５１０では、コンテンツ入力プログラムＰ１５３が実行され、コンテンツ登録コマンドが生成される。図１７に示すコマンド例２０３は、ステップＳ１５１０によって生成されたコンテンツ登録コマンドの一例である。生成されたこのコンテンツ登録コマンドをコンテンツ受信サーバ１０４に送信することによって、コンテンツがサーバに登録される（ステップＳ１５１１）。コンテンツ受信サーバ１０４から登録結果が返信されるのを待ち、コンテンツ受信サーバ１０４からコンテンツの登録結果を受信すると、コンテンツ受信サーバ１０４から送信された登録コンテンツの識別子をワークエリアに格納しておく（ステップＳ１５１２）。ここでは、「ＣＯＮＴＥＮＴＳＩＤ−０００１」がコンテンツ識別子として得られた文字列とする。
【０１８３】
図１６では、「Ｗｅｂ」、「進化」というコンテンツタグ候補文字列と、ユーザ自身が「変遷」という文字列をコンテンツに関連する文字列として入力した文字列としている。コンテンツに関連する文字列が入力されたことから、ステップＳ１５１３において、「ＣＯＮＴＥＮＴＳＩＤ−０００１」のコンテンツタグが存在すると判断し、ステップＳ１５１４およびステップＳ１５１５の処理を実行する。
【０１８４】
図１８に示すコマンド２０４は、ステップＳ１５１４にて生成したコンテンツタグ登録コマンドの一例である。コマンド２０４は、前述したステップＳ１５１５において、タグ管理サブシステム１０１に送信される。コンテンツタグ登録コマンドが実行されたことによって、コマンド２０４を受信したタグ管理サブシステム１０１において、コンテンツとタグ情報とを関連付ける処理が実行される。
【０１８５】
タグ管理サブシステム１０１は、コンテンツタグ登録コマンドを受信する（ステップＳ１１１）と、ステップＳ１１２およびステップＳ１１３の処理を経て、ステップＳ１１４のタグ登録処理を実行する。
【０１８６】
ステップ１１４のタグ登録処理では、始めに、タグ属性情報登録プログラムＰ１１１は、タグ属性テーブルＤ１１１にタグ情報を登録する。図１９は、タグ属性テーブルＤ１１１の具体例を示す。ステップ１１４では、コンテンツタグ登録コマンド内に存在するタグ情報がこのタグ属性テーブルに存在する場合は、タグ属性テーブルの頻度情報を更新する。一方、コンテンツタグ登録コマンド内に存在するタグ情報がこのタグ属性テーブルに存在しない場合は、タグ属性テーブルにこのタグ情報を追加する。
【０１８７】
例えば、「Ｗｅｂ」というタグ文字列は図１９のテーブル上に既に存在するため、「Ｗｅｂ」の頻度情報が「１０」から「１１」にカウントアップされる。また、「変遷」というタグ情報が図１９のテーブルに存在しないとすれば、タグ情報「変遷」と頻度情報「１」をセットにして、タグ属性テーブルＤ１１１に登録する。
【０１８８】
次に、コンテンツタグ管理情報登録プログラムＰ１１２を実行することによって、タグ属性テーブルに登録したタグ情報とコンテンツタグ登録コマンド内に存在するコンテンツ識別子とを紐付けて、コンテンツタグ管理情報格納領域Ｄ１１２に登録する。図２０は、コンテンツタグ管理情報が格納されたテーブル２０６の例を示す。
【０１８９】
テーブル２０６では、タグ情報の識別子をタグＩＤと、コンテンツ識別子をコンテンツＩＤと表記する。なお、図２０に示すテーブル２０６では、タグ情報とコンテンツ識別子とを関連付ける情報としてタグ情報の識別子であるタグＩＤを用いるが、タグ情報とタグの文字列と関連付けてもよい。また、図２０に示すように、タグを登録した登録者名と登録回数とを記録することによって、後述するユーザ毎に登録されたタグ検索処理が行えるようになる。なお、このタグ検索処理が必要ない場合は、登録者名と登録回数とは、テーブル２０６に含まれなくてもよい。
【０１９０】
タグ登録処理の最後に、タグ関連情報登録プログラムＰ１１３によるタグ間の関連情報を登録する。図２１に示すテーブル２０７は、タグ関連テーブルＤ１１３の具体例である。
【０１９１】
テーブル２０７では、タグ識別子をタグＩＤとし、異なる二つのタグＩＤにそれぞれタグＩＤ−１、タグＩＤ−２と表記する。ユーザによって二つのタグが共に指定された回数を関連度として格納する。なお、ここでは、ユーザによって二つのタグが共に指定された回数を関連度として格納するが、二つのタグが共に指定された回数を全てのタグの出現回数で割ることによって、二つのタグが共に出現する確率を関連度として設定してもよい。
【０１９２】
次に、コンテンツ参照処理の具体例について、タグ管理サブシステム１０１および情報検索クライアント１０３の処理手順に基づいて説明する。
【０１９３】
図２２における画面２０８は、情報検索クライアント１０３またはコンテンツ配信クライアント１０５において、コンテンツ参照に用いる画面の一例である。
【０１９４】
画面２０８には、対象のコンテンツを表示する領域の他、コンテンツに関連したタグ文字列を表示する領域を含み、コンテンツデータの登録時やデータ参照時に、ユーザが登録したタグ情報がリスト化されて表示され、リストから選択することが可能な状態となっている。このタグ情報のリスト化の処理については後述する。
【０１９５】
また、画面２０８には、「タグ登録」ボタンが設けられており、ユーザはリスト化されたタグ情報からタグを選択し、または、テキストボックス内にユーザが自由に発想したタグ文字列を入力した後に、「タグ登録」ボタンを操作することによって、ユーザは表示されたコンテンツに適したタグ情報を設定できる。
【０１９６】
情報検索クライアント１０３またはコンテンツ配信クライアント１０５で、図２２の画面２０８を表示し関連タグ情報のリスト化する処理は、まず、コンテンツ受信サーバ１０４から取得する参照対象のコンテンツ識別子情報に基づいて、情報検索クライアント１０３またはコンテンツ配信クライアント１０５からタグ管理サブシステム１０１に対して、コンテンツタグの検索リクエストが送信される。
【０１９７】
コンテンツタグの検索リクエストの一例を図２３のコマンド２０９に示す。タグ管理サブシステム１０１は、この検索リクエスト中に含まれるコンテンツ識別子情報に基づいて、コンテンツタグ管理情報格納領域Ｄ１１２を走査し、コンテンツ識別子と紐付いけられているタグ情報をリスト化して、情報検索クライアント１０３またはコンテンツ配信クライアント１０５に返信する。例えば、図２０に示すテーブル２０６の情報が格納されており、コンテンツ識別子として「ＣＯＮＴＥＮＴＳＩＤ−００１」が設定された場合、関連するタグとして「ＴＡＧ−１」、「ＴＡＧ−２２」、「ＴＡＧ−４４」を返信する。
【０１９８】
なお、ここでは、タグの識別子を返信したが、タグ管理サブシステム１０１内に格納されているタグ属性テーブル格納領域Ｄ１１１を合わせて走査することにより、タグの名称を返信してもよい。最後に、返信されたタグ情報を関連タグとしてリスト化して画面上に表示する。
【０１９９】
なお、ここでは、コンテンツデータの登録時やデータ参照時にユーザが登録したタグ情報を全て表示したが、閲覧者が設定したタグ情報のみを表示してもよく、コンテンツ作成者が設定したタグ情報のみを表示してもよい。図２０には、コンテンツ識別子とタグ識別子とを紐付ける情報だけでなく、それらを登録したユーザの情報も格納されており、表示したいユーザを設定して検索することによって、このユーザによるフィルタリング機能を実現することが可能である。
【０２００】
また、コンテンツ識別子と紐付いたタグの識別子集合とを返信する手順を具体的に示したが、コンテンツ識別子とタグ識別子集合の返信処理に加えて、情報検索クライアント１０３上で、コンテンツ配信クライアント１０５のステップＳ１５０６からステップＳ１５０８と同等のタグ情報検索処理を実行してもよい。タグ情報検索処理を加え、かつ、コンテンツ識別子と紐付いたタグの名称と、ユーザ自身が指定した文字列とをキーワードにして、タグ管理サブシステム１０１内に格納されているタグ属性テーブルＤ１１３を合わせて走査することによって、画面２０８に表示されたコンテンツ以外で設定されている関連するタグ情報を取得することが可能である。
【０２０１】
さらに、コンテンツデータに関連したタグ情報を全て表示するのではなく、よく使われているタグ情報のみ表示する処理を実現することも容易である。図２０には、コンテンツに対してコンテンツデータに関連したタグを登録した回数を格納する領域が存在しており、タグを登録した回数を格納する領域を参照することで、よく使われているタグの降順にタグを表示することも実現できる。
【０２０２】
また、よく使われているタグの降順にタグを表示する処理において得られたコンテンツ識別子と紐付いたタグの識別子集合に基づいて、全文検索や概念検索などの検索技術において一般的に利用されているインデックスファイルを走査し、コンテンツ内で共起する確率の高い文字列をタグ情報として設定したり、コンテンツ内で共起する確率の低い文字列をタグ情報から除外したりする処理を実現できる。
【０２０３】
インデックスファイルＤ１２０は、情報検索サーバ１０２に格納されているため、コンテンツ内で共起する確率の高い文字列をタグ情報として設定したり、コンテンツ内で共起する確率の低い文字列をタグ情報から除外したりする処理を情報検索サーバ１０２で実行することによって、得られたコンテンツ識別子と紐付いたタグの識別子集合をキーワードとして、情報検索システムに検索リクエストを送信し、共起する確率の高い新たな文字列の情報を得ることや、ステップＳ１５０５にて得られたコンテンツタグ候補文字列やユーザ自身が指定した文字列の集合を検索リクエストとして情報検索システムに送信し、共起する確率を取得することができる。なお、インデックスファイルを走査することにより、コンテンツ内で共起する確率の高い文字列を取得する方法やコンテンツ内で共起する確率を得る方法は既に公知であるため、ここでは詳述しない。
【０２０４】
さらに、前述した方法を二つ以上組み合せて、表示するタグ情報を選定することもできる。
【０２０５】
次に、「タグ登録」ボタンが操作された時の処理について説明する。まず、コンテンツ配信クライアント１０５における「タグ登録」ボタンが操作された時の処理は、ステップＳ１５１０以降の処理と同様である。そして、情報検索クライアント１０３における「タグ登録」ボタンが操作された時の処理について記載する。
【０２０６】
図２２に示す「タグ登録」ボタンが操作されると、情報検索クライアント１０３における検索クライアント制御プログラムＰ１３からタグ登録コマンドが発行され、ステップＳ１３０２からステップＳ１３０４の処理を経て、ステップＳ１３１２およびステップＳ１３１３の処理が実行される。
【０２０７】
まず、ステップＳ１３１２では、コンテンツタグ入力プログラムＰ１３４が実行され、コンテンツタグ登録コマンドが生成される。生成されるコマンドの具体例は、図１８に示すコマンド２０４と同等である。
【０２０８】
コンテンツタグ登録コマンドをタグ管理サブシステム１０１に送信するステップＳ１３１３が実行される。ステップＳ１３１３が実行されることによって、コンテンツタグ登録コマンドを受信したタグ管理サブシステム１０１が、コンテンツとタグ情報とを関連付ける処理を実行する。なお、タグ管理サブシステム１０１における処理は、前記コンテンツタグの登録処理と同様のステップを実行する。また、詳細な動作手順については同様の処理であるため省略する。
【０２０９】
最後に、コンテンツ検索処理の具体例について、タグ管理サブシステム１０１、情報検索サーバ１０２、情報検索クライアント１０３の処理手順に基づいて説明する。
【０２１０】
図２４に示すリクエストコマンド２１０は、情報検索クライアント１０３のコンテンツ検索条件入力プログラムＰ１３２によって生成された検索リクエストの一例である。この検索リクエストは、ＤＢ１というデータベース内でタグ「Ｗｅｂ」とタグ「進化」とを含むコンテンツを検索する条件式である。この検索リクエストは情報検索サーバ１０２に送信される。
【０２１１】
情報検索サーバ１０２はこの検索リクエストを受信すると、ステップＳ１２０８（図７参照）によって、タグ管理サブシステム１０１が解釈可能な検索条件式に変換される。ここでは、図２５に示すリクエストコマンド２１１に変換された文字列とする。この変換された検索リクエストは、タグ管理サブシステム１０１に送信される。
【０２１２】
タブ管理サブシステム１０１はこの検索リクエストを受信すると、処理手順のステップＳ１１５およびステップＳ１１６（図３参照）において、コンテンツタグ管理情報格納領域Ｄ１１２を走査することによって、検索対象のタグ情報と紐付けられたコンテンツ識別子の集合を取得する。ステップＳ１１７によって、取得したコンテンツ識別子の集合である結果データ集合を要求元の情報検索サーバ１０２に返信する。
【０２１３】
情報検索サーバ１０２は、タグ管理サブシステム１０１から返信された結果データ集合を受信すると、検索結果データ集合内に存在するコンテンツ識別子に基づいて、コンテンツ検索プログラムＰ１２２を起動し、該当するコンテンツの情報をコンテンツ受信サーバ１０４から取得する。取得したコンテンツの集合を含む検索結果データ集合は要求元である情報検索クライアント１０３に返信される。
【０２１４】
情報検索クライアント１０３では、検索結果データ集合を受信し、検索結果表示プログラムＰ１３３を実行することによって検索結果を表示する。
【０２１５】
以上で説明したように、第一の実施の形態によると、コンテンツ登録やコンテンツ参照において、システムユーザが関連付けたタグ情報に基づいた検索が実施可能となるため、システム開発者やシステム管理者が辞書データに相当する情報を事前に用意する必要がなく、開発や運用に必要なコストや工数を削減することができる。また、時代の変遷と共に発生する新語も、コンテンツ登録時や閲覧時にユーザによる追加登録が可能となるため、管理者が辞書データのメンテナンス作業を行う必要がない。
【０２１６】
つまり、本発明によって、Ｗｅｂなどに存在するコンテンツに対する検索システムを、効率よく管理するためのシステムを実現することができる。
【０２１７】
（第二の実施の形態）
次に、本発明の第二の実施の形態について、図面を用いて説明する。
【０２１８】
第二の実施の形態のシステムの構成は、前述した第一の実施の形態のシステムの構成と同一であるが、情報検索クライアント１０３またはコンテンツ配信クライアント１０５において、コンテンツに関連したタグを登録する処理が異なる。その結果、タグ管理サブシステム１０１のタグ登録処理におけるタグ関連情報のデータ格納方式が異なり、タグ関連情報の選択結果が第一の実施の形態とは異なる。
【０２１９】
ここで、第一の実施の形態において格納されたタグ関連情報の具体例（図２１に示すテーブル２０７）を考察する。テーブル２０７では、「Ｗｅｂ」（ＴＡＧ−１）と「進化」（ＴＡＧ−２２）、「Ｗｅｂ」（ＴＡＧ−１）と「変遷」（ＴＡＧ−４４）、「進化」（ＴＡＧ−２２）と「変遷」（ＴＡＧ−４４）とがそれぞれ関連するタグとして格納されている。
【０２２０】
これらは、第一の実施の形態における「ＣＯＮＴＥＮＴＳＩＤ−００１」のコンテンツにおいては互いに関連する文字列であるが、別のコンテンツにおいて関連する情報であるとは限らない。また、一つのテーマで一つのコンテンツを作成した場合は、コンテンツに関連するタグ情報間は関連を有する文字列が設定される可能性が高いが、二つ以上のテーマで一つのコンテンツを形成した場合、言語としては全く関係のない文字列同士が関連を持つと設定される可能性もある。
【０２２１】
例えば、第一の実施の形態におけるコンテンツ登録例（図１５に示すテーブル２０２）のように「Ｗｅｂがドンドン進化している。ちょっと昔ならば、単純なＨＴＭＬのページを表示しているだけで、単なる掲示板にしか過ぎなかったのだが・・・。今では、もうＷｅｂでなんでもできる時代になった。」というコンテンツと共に、「今日の昼食：コンビニで買ったアンパン」という情報も付加してコンテンツ登録する場合、タグ情報として登録される文字列は、タグ「Ｗｅｂ」、「進化」、「変遷」の他に、文字列「アンパン」もタグとして登録される可能性がある。この場合、「Ｗｅｂ」と「アンパン」というタグの関係性は、該コンテンツを媒介した場合は成立するが、このコンテンツを媒介しない場合は意味的に、関連性が成立することはほとんどない。このような条件の場合に、タグ情報を用いたコンテンツ検索を行うと、「アンパンの上にある塩漬けの桜は、明治時代に天皇に上納する際に・・・」といった本来不要なコンテンツを検索することにつながり、検索精度の劣化要因となる。
【０２２２】
第二の実施の形態では、コンテンツに関連するタグを登録する際に、タグ間の関連性についてユーザに確認させる処理を追加することによって、関連性の薄い情報を排除することができるようになるため、検索精度を向上させることが可能である。
【０２２３】
以下、第二の実施の形態における情報検索クライアント１０３およびコンテンツ配信クライアント１０５の詳細について説明する。
【０２２４】
まず、情報検索クライアント１０３の詳細について説明する。
【０２２５】
図２６は、第二の実施の形態における情報検索クライアント１０３の構成を示す図である。
【０２２６】
第二の実施の形態の情報検索クライアント１０３のハードウェア構成は、図８に示す第一の実施の形態の情報検索クライアント１０３のハードウェア構成と変わらない。ただし、主メモリ１１０は、第一の実施の形態において保持するプログラム群に加えて、タグ関連度確認プログラムＰ１３５を保持する。また、磁気ディスク装置１２０中には、第一の実施の形態において確保される領域群に加えて、タグ関連度情報格納領域Ｄ１３２が確保される。
【０２２７】
タグ関連度確認プログラムＰ１３５は、ユーザが設定したコンテンツに関連するタグ情報間の相関関係の関連度を類推し、ユーザと対話しながら関係度を確定する。
【０２２８】
図２７は、本発明の第二の実施の形態の情報検索クライアント１０３の処理を示したアクティビティダイアグラムである。
【０２２９】
図２７において、第一の実施の形態における情報検索クライアント１０３の概略処理（図９）と比較して、解析したコマンドの種別がタグ登録コマンドである場合に、前記タグ関連度確認プログラムＰ１３５を呼び出してタグ間の相関関係の関連度を確定する処理（ステップＳ１３１４）が追加されている点において異なる。
【０２３０】
また、図２８は、本発明の第二の実施の形態におけるタグ関連度確認プログラムＰ１３５の処理手順と、図２７のステップＳ１３１４の概略処理とを示したアクティビティダイアグラムである。以下、タグ関連度確認プログラムＰ１３５の処理手順について、図２８を用いて説明する。
【０２３１】
検索クライアント制御プログラムＰ１３からタグ関連度確認プログラムＰ１３５が起動すると、タグ関連度確認プログラムＰ１３５はワークエリアに格納されたタグ情報を順次呼び出し、ステップＳ１３１４０１からステップＳ１３１４１３の処理を実行する。
【０２３２】
まず、ステップＳ１３１４０１では、データの通し番号の初期値を付与する。データの通し番号を格納する変数をｉとし、本ステップでは、ｉ＝１を設定する。
【０２３３】
ステップＳ１３１４０２では、ワークエリアに格納されているタグ情報のうち、ｉ番目のデータを読み出す。
【０２３４】
ステップＳ１３１４０３では、ワークエリアに格納されているｉ＋１番目のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。本ステップでは、ｉ＋１番目のデータが存在する場合はステップＳ１３１４０４からなる処理に分岐する。一方、ｉ＋１番目のタグ情報が存在しない場合は、本プログラムを終了する。
【０２３５】
ステップＳ１３１４０４では、ｉ番目のデータとの関連情報を設定すべき対象のデータの通し番号の初期値を付与する。データの通し番号を格納する変数をｊとし、本ステップでは、ｊ＝ｉ＋１を設定する。
【０２３６】
ステップＳ１３１４０５では、ワークエリアに格納されているタグ情報のうち、ｊ番目のデータを読み出す。
【０２３７】
ステップＳ１３１４０６では、読み出されたｉ番目のデータとｊ番目のデータとの内容に基づいてタグ関連度情報格納領域Ｄ１３２を走査し、該データ間の関連度を推定する。なお、タグ関連度情報格納領域Ｄ１３２に格納されるデータは、タグ管理サブシステム１０１におけるタグ関連テーブルＤ１１３から得られるデータであり、その格納方法としては、ネットワーク１０６を介してタグ管理サブシステム１０１から情報検索クライアント１０３に転送する方法でもよい。また、磁気ディスク、光磁気ディスク、追記型光磁気ディスクなどの可搬型記憶媒体を使用して格納する方法でもよい。さらに、情報検索クライアント１０３においてタグ関連テーブルＤ１１３を検索するコマンドを生成することによって、本ステップの実行に必要なデータのみをタグ管理サブシステム１０１から取得してもよい。
【０２３８】
ステップＳ１３１４０７では、前記ステップＳ１３１４０６にて推定されたｉ番目のデータとｊ番目のデータとにおけるタグ間の関連度が予め設定された閾値を越えるか否かを判定し、その判定結果に基づいてそれぞれに対応する処理に分岐する。本ステップでは、推定した関連度が閾値以下である場合は、ステップＳ１３１４０８およびステップＳ１３１４０９からなる処理に遷移し、閾値より大きい場合は、ステップＳ１３１４１０以降の処理に遷移する。
【０２３９】
ステップＳ１３１４０８では、ユーザが関連度を確認し、対話的に関連度を入力する画面をディスプレイ１３０に表示する。
【０２４０】
ステップＳ１３１４０９では、ユーザが入力した関連度情報に基づいて、タグ間の関連度を再計算する。再計算した関連度情報に基づいて、タグ関連度情報格納領域Ｄ１３２を更新する。
【０２４１】
ステップＳ１１４３１０では、ワークエリアに格納されているｊ＋１番目のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。本ステップでは、ｊ＋１番目のデータが存在する場合はステップＳ１３１４１１からなる処理に分岐する。一方、次のタグ情報が存在しない場合は、ステップＳ１３１４１２からなる処理に分岐する。
【０２４２】
ステップＳ１３１４１１では、データの通し番号を格納する変数ｊの値を現在のｊの値に”１”を加算した値に設定する。ステップＳ１３１４１１が終了すると、ステップＳ１３１４０５に戻り、処理を継続する。
【０２４３】
ステップＳ１１４３１２では、ワークエリアに格納されているｉ＋１番目のタグ情報が存在するか否かを判定し、それぞれに対応する処理に分岐する。本ステップでは、ｉ＋１番目のデータが存在する場合はステップＳ１３１４１３からなる処理に分岐する。一方、ｉ＋１番目のタグ情報が存在しない場合は、本プログラムを終了する。
【０２４４】
ステップＳ１３１４１３では、データの通し番号を格納する変数ｉの値を現在のｉの値に”１”を加算した値に設定する。ステップＳ１３１４１３が終了すると、ステップＳ１３１４０２に戻り、処理を継続する。
【０２４５】
次に、第二の実施の形態のコンテンツ配信クライアント１０５について説明する。
【０２４６】
図２９は、第二の実施の形態のコンテンツ配信クライアント１０５の構成を示す図である。第二の実施の形態におけるコンテンツ配信クライアント１０５のハードウェア構成は、図１１に示す第一の実施の形態のコンテンツ配信クライアント１０５のハードウェア構成と変わらない。ただし、主メモリ１１０は、第一の実施の形態において保持するプログラム群に加えて、タグ関連度確認プログラムＰ１５６を保持する。また、磁気ディスク装置１２０中には、第一の実施の形態において確保される領域群に加えて、タグ関連度情報格納領域Ｄ１３２が確保される。
【０２４７】
タグ関連度確認プログラムＰ１５６は、ユーザが設定したコンテンツに関連するタグ情報間の相関関係の関連度を類推し、ユーザと対話しながら関係度を確定する。
【０２４８】
図３０は、本発明の第二の実施の形態のコンテンツ配信クライアント１０５の処理を示したアクティビティダイアグラムである。
【０２４９】
図３０において、第一の実施の形態におけるコンテンツ配信クライアント１０５の概略処理（図１２）と比較して、解析したコマンドの種別がタグ登録コマンドである場合に、前記タグ関連度確認プログラムＰ１５６を呼び出してタグ間の相関関係の関連度を確定する処理（ステップＳ１５１６）を加えている点が異なる。
【０２５０】
なお、本発明の第二の実施の形態におけるタグ関連度確認プログラムＰ１５６の処理手順である、図３０のステップＳ１５１６の概略処理は、前記情報検索クライアント１０３におけるタグ関連度確認プログラムＰ１３５の処理手順と同等である。そのため、ここでは詳細について説明しない。
【０２５１】
第二の実施の形態におけるコンテンツ検索処理は、第一の実施の形態と同様であるため省略とし、以下では、本発明の第二の実施の形態におけるコンテンツ登録処理およびコンテンツ参照処理について、各々具体的な例を用いて説明する。
【０２５２】
まずは、コンテンツ登録における処理手順について説明する。ユーザに対してコンテンツ登録を行うための画面（図１３）を提示し、ユーザと対話しながら登録条件を設定する処理（コンテンツ配信クライアント１０５におけるステップＳ１５０１からステップＳ１５０８）までは同様の処理である。以下では、図１６の状態に画面が遷移したあと、ユーザが図１６における「登録」ボタンを操作した後に実行される処理、特にタグ関連度確認プログラムＰ１５６の処理手順（ステップＳ１５１６）について、具体例を用いて説明する。
【０２５３】
例えば、ユーザがコンテンツの登録時に関連するタグ情報として「Ｗｅｂ」、「進化」、「変遷」の三つを登録したとする。このとき、コンテンツ配信クライアント１０５は、タグ関連度確認プログラムＰ１３５を起動し、タグの関連度を確認するステップ（ステップＳ１３１４０６）を実行する。
【０２５４】
第二の実施の形態では、ネットワーク１０６を介してタグ管理サブシステム１０１に対して検索コマンドを発行して、タグ関連テーブルＤ１１３の該当情報を得る文字列とする。
【０２５５】
図２５は、「Ｗｅｂ」と「変遷」との関連度を検索するコマンドの一例である。このコマンドをタグ管理サブシステム１０１に送信することによって、該当するタグ関連情報が返信される。この関連情報に内包される関連度は、第一の実施の形態では、ユーザが設定時に共起した回数としているため、二つのタグ情報が同時に使用される可能性、つまり、値が大きいほど関連している可能性を示す情報と考えることができる。この情報に基づいて、ある閾値以下の関連度の場合に、ユーザに対して該タグの関係を確認する画面を表示する（ステップＳ１３１４０７およびステップＳ１３１４０８）。
【０２５６】
図３１では、「Ｗｅｂ」（ＴＡＧ−１）と「変遷」（ＴＡＧ−４４）との関連度は「１」、「Ｗｅｂ」（ＴＡＧ−１）と「進化」（ＴＡＧ−２２）との関連度は「３」、「進化」（ＴＡＧ−２２）と「変遷」（ＴＡＧ−４４）との関連度は「１０」と設定されている。仮に、ステップＳ１３１４０７において、この判定のための閾値の設定が「５」である場合、「Ｗｅｂ」と「変遷」、および、「Ｗｅｂ」と「進化」との関連性についてユーザに確認することになる。
【０２５７】
図３２は、ステップＳ１３１４０８においてユーザに確認する画面の一例である。登録ユーザが、図３２における「はい」ボタンまたは「いいえ」ボタンを操作することによって、該当するタグ間の関連度を再計算する（ステップＳ１３１４０９）。例えば、図３２で「はい」ボタンを選択した場合は、「Ｗｅｂ」と「変遷」との関連度に”１”を加算し、「いいえ」を選択した場合には、「Ｗｅｂ」と「変遷」との関連度から”１”を減算する。このような処理を実装することによって、ユーザが本システムを利用して登録を行うたびに、タグ間の関連性についてより適切な関連度に更新していくことができる。なお関連度の数値は、一定の範囲を設けることとし、範囲内で増減してもよい。
【０２５８】
なお、第二の実施の形態では、タグ関連テーブルＤ１１３上の関連度という項目のみでユーザに確認画面を提示するか否かを判定する方式を記述したが、シソーラス検索などに用いられる辞書（コーパス）を利用して、判定を行うことも可能である。コーパスには、例えば、異表記語、類似語または同意語などある単語に関連する単語が予め登録されていることが多い。この情報に基づいて、関連する単語としてコーパス上で登録されていない場合は、ユーザに確認するという方式としてもよい。
【０２５９】
また、タグ属性テーブルＤ１１１に格納されている「頻度」情報に基づいて、あまり出現していないタグとの組合せの場合は、ユーザに確認するという方式を採ることもできる。
【０２６０】
さらに、上記の方式を二つ以上組み合せて判定に用いることも容易に実現可能である。
【０２６１】
前記に加えて、図３２において「はい」ボタンを選択後に、用語間の関係性を説明する情報（関連情報）を入力する画面を提示してもよい。
【０２６２】
図３３は、用語間の関係性を説明する情報を入力する画面の一例である。
【０２６３】
この場合、図３２において登録ユーザが「はい」ボタンを選択した場合に、ステップＳ１３１４０９の処理を実行する前に図３３の画面を表示し、登録ユーザに関連情報の入力を促し、図３３でユーザが「ＯＫ」ボタンを選択した場合にのみステップＳ１３１４０９の処理を実行するようにすることもできる。なお、登録ユーザが「キャンセル」ボタンを選択した場合は、図３２の画面に戻る。
【０２６４】
次に、コンテンツ参照における処理手順について説明する。ユーザに対してコンテンツ参照を行うための画面（図２２）を提示し、ユーザと対話しながらタグ登録を設定する処理（情報検索クライアント１０３におけるステップＳ１３０１からステップＳ１５１１）までは同様の処理である。
【０２６５】
なお、ユーザが図２２における「タグ登録」ボタンを操作した後に実行される処理、特にタグ関連度確認プログラムＰ１３５（ステップＳ１３１４）の処理手順は、前記コンテンツ配信クライアント１０５におけるタグ関連度確認プログラムＰ１５６（ステップＳ１５１６）の処理と同様である。
【０２６６】
以上で説明したように、第二の実施の形態によると、本システムを利用するユーザの協力を得ながらタグ間の関連度情報の精度を自動的に向上させるといったことが可能になる。さらに、タグ間の関連度情報の精度を向上させることで、より密接に関連するタグのみを検出することが可能になり、タグ情報によるコンテンツを検索する場合における検索精度向上に寄与することも可能になる。
【０２６７】
つまり、本発明によって、利用するユーザが提供する情報によって検索精度を向上させることが可能な検索システムを実現することが可能になる。
【図面の簡単な説明】
【０２６８】
【図１】本発明の第一の実施の形態における情報管理システムのシステム全体構成を示す図である。
【図２】本発明の第一の実施の形態におけるタグ管理サブシステムのシステム構成を示す図である。
【図３】本発明の第一の実施の形態におけるタグ管理サブシステムのタグ情報処理の概略手順を示すアクティビティダイアグラムである。
【図４】本発明の第一の実施の形態におけるタグ管理サブシステムのタグ属性情報登録プログラムの処理手順を示すアクティビティダイアグラムである。
【図５】本発明の第一の実施の形態におけるタグ管理サブシステムのタグ関連情報登録プログラムの処理手順を示すアクティビティダイアグラムである。
【図６】本発明の第一の実施の形態における情報検索サーバのシステム構成を示す図である。
【図７】本発明の第一の実施の形態における情報検索サーバの検索処理の概略手順を示すアクティビティダイアグラムである。
【図８】本発明の第一の実施の形態における情報検索クライアントのシステム構成を示す図である。
【図９】本発明の第一の実施の形態における情報検索クライアントの概略手順を示すアクティビティダイアグラムである。
【図１０】本発明の第一の実施の形態における情報検索クライアントの検索結果表示プログラムの処理手順を示すアクティビティダイアグラムである。
【図１１】本発明の第一の実施の形態におけるコンテンツ配信クライアントのシステム構成を示す図である。
【図１２】本発明の第一の実施の形態におけるコンテンツ配信クライアントの概略手順を示すアクティビティダイアグラムである。
【図１３】本発明の第一の実施の形態におけるコンテンツ配信クライアントにて表示するコンテンツ登録画面の初期表示の一の形態を示す図である。
【図１４】本発明の第一の実施の形態におけるコンテンツ配信クライアントにて表示するコンテンツ登録画面のコンテンツタグ候補選択表示例を示す図である。
【図１５】本発明の第一の実施の形態におけるコンテンツタグ候補文字列の抽出例を示す図である。
【図１６】本発明の第一の実施の形態におけるコンテンツ配信クライアントにて表示するコンテンツ登録画面のコンテンツタグ候補選択表示例を示す図である。
【図１７】本発明の第一の実施の形態におけるコンテンツ登録コマンドの一例を示す図である。
【図１８】本発明の第一の実施の形態におけるコンテンツタグ登録コマンドの一例を示す図である。
【図１９】本発明の第一の実施の形態におけるタグ属性テーブルの一例を示す図である。
【図２０】本発明の第一の実施の形態におけるコンテンツタグ管理情報の格納例を示す図である。
【図２１】本発明の第一、第二の実施の形態におけるタグ関連テーブルの一例を示す図である。
【図２２】本発明の第一の実施の形態における情報検索クライアント、コンテンツ配信クライアントにて表示するコンテンツ参照画面の一例を示す図である。
【図２３】本発明の第一の実施の形態におけるタグ管理サブシステムに対するコンテンツタグ検索リクエストの一例を示す図である。
【図２４】本発明の第一の実施の形態における情報検索サーバに対するコンテンツ検索リクエストの一例を示す図である。
【図２５】本発明の第一の実施の形態におけるタグ管理サブシステムに対するコンテンツ検索リクエストの一例を示す図である。
【図２６】本発明の第二の実施の形態における情報検索クライアントのシステム構成を示す図である。
【図２７】本発明の第二の実施の形態における情報検索クライアントの概略処理を示したアクティビティダイアグラムである。
【図２８】本発明の第二の実施の形態における情報検索クライアントのタグ関連度確認プログラムの処理手順を示す図である。
【図２９】本発明の第二の実施の形態におけるコンテンツ配信クライアントのシステム構成を示す図である。
【図３０】本発明の第二の実施の形態におけるコンテンツ配信クライアントの概略処理を示す図である。
【図３１】本発明の第二の実施の形態におけるユーザにタグ間の関連度を確認する画面例を示す図である。
【図３２】本発明の第二の実施の形態におけるユーザにタグ間の関連度を確認する画面例を示す図である。
【図３３】本発明の第二の実施の形態における用語間の関係性を説明する情報を入力する画面例を示す図である。
【符号の説明】
【０２６９】
１０１      タグ管理サブシステム
１０２      情報検索サーバ
１０３      情報検索クライアント
１０４      コンテンツ受信サーバ
１０５      コンテンツ配信クライアント
１０６      ネットワーク
１１０      主メモリ
１２０      磁気ディスク装置
１３０      ディスプレイ
１４０      入力装置
１５０      通信制御装置
Ｐ１０      システム制御プログラム
Ｐ１１      タグ管理制御プログラム
Ｐ１１０    コマンド解析プログラム
Ｐ１１１    タグ属性情報登録プログラム
Ｐ１１２    コンテンツタグ管理情報登録プログラム
Ｐ１１３    タグ関連情報登録プログラム
Ｐ１１４    タグ関連度算出プログラム
Ｐ１１５    検索条件式解析プログラム
Ｐ１１６    タグ検索プログラム
Ｐ１１７    検索結果取得プログラム
Ｐ１２      情報検索制御プログラム
Ｐ１２１    検索条件式解析プログラム
Ｐ１２２    コンテンツ検索プログラム
Ｐ１２３    検索結果取得プログラム
Ｐ１２４    タグ情報検索条件生成プログラム
Ｐ１２５    タグ情報検索結果取得プログラム
Ｐ１３      検索クライアント制御プログラム
Ｐ１３１    タグ検索条件入力プログラム
Ｐ１３２    コンテンツ検索条件入力プログラム
Ｐ１３３    検索結果表示プログラム
Ｐ１３４    コンテンツタグ入力プログラム
Ｐ１５      配信クライアント制御プログラム
Ｐ１５１    タグ検索条件入力プログラム
Ｐ１５２    タグ検索結果表示プログラム
Ｐ１５３    コンテンツ入力プログラム
Ｐ１５４    コンテンツタグ入力プログラム
Ｐ１５５    コンテンツタグ候補抽出プログラム
Ｄ１１１    タグ属性テーブル格納領域
Ｄ１１２    コンテンツタグ管理情報格納領域
Ｄ１１３    タグ関連テーブル格納領域
Ｄ１１４    インデックスファイル格納領域
Ｄ１２０    インデックスファイル格納領域
Ｄ１２１    コンテンツ格納領域
Ｄ１２２    タグ検索結果データ格納領域
Ｄ１３１    検索結果データ格納領域
Ｄ１５１    検索結果データ格納領域
【図２】
2010039989.tif 000003
【図３】
2010039989.tif 000004
【図４】
2010039989.tif 000005
【図５】
2010039989.tif 000006
【図６】
2010039989.tif 000007
【図７】
2010039989.tif 000008
【図８】
2010039989.tif 000009
【図９】
2010039989.tif 000010
【図１０】
2010039989.tif 000011
【図１１】
2010039989.tif 000012
【図１２】
2010039989.tif 000013
【図１３】
2010039989.tif 000014
【図１４】
2010039989.tif 000015
【図１５】
2010039989.tif 000016
【図１６】
2010039989.tif 000017
【図１７】
2010039989.tif 000018
【図１８】
2010039989.tif 000019
【図１９】
2010039989.tif 000020
【図２０】
2010039989.tif 000021
【図２１】
2010039989.tif 000022
【図２２】
2010039989.tif 000023
【図２３】
2010039989.tif 000024
【図２４】
2010039989.tif 000025
【図２５】
2010039989.tif 000026
【図２６】
2010039989.tif 000027
【図２７】
2010039989.tif 000028
【図２８】
2010039989.tif 000029
【図２９】
2010039989.tif 000030
【図３０】
2010039989.tif 000031
【図３１】
2010039989.tif 000032
【図３２】
2010039989.tif 000033
【図３３】
2010039989.tif 000034
【図１】
2010039989.tif 000035