(57)【要約】【課題】ユーザにより指定された検索条件に合致するコンテンツのメタデータを、そのコンテンツが当該ユーザにより購入済みか否かを示す情報とともにメタデータ検索結果として得る情報処理装置を提供する。【解決手段】メタデータクライアントはユーザトークンを含むTV-Anytimeメタデータクエリを主体とするメタデータ検索要求をメタデータサーバに送信する。メタデータサーバは、メタデータクライアントより受信したメタデータ検索要求に含まれるクエリの条件にヒットしたコンテンツのメタデータを検索する。メタデータサーバは、そのメタデータ検索要求に含まれるユーザトークンをもとにユーザアカウントデータベースにユーザトークンと関連付けて登録されているコンテンツ購入履歴を問い合わせ、このコンテンツ購入履歴とメタデータの検索結果とからTV-Anytimeメタデータを生成してメタデータクライアントに送信する。【選択図】図２
2010028584.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ毎のコンテンツ購入履歴を格納するコンテンツ購入履歴格納部と、
複数のコンテンツのメタデータが格納されたメタデータ格納部と、
ネットワークを通じてユーザの端末装置より送信された当該ユーザを特定する情報および検索条件を含むメタデータ検索要求を受信したとき、前記メタデータ格納部から前記検索条件に合致するコンテンツのメタデータを検索するとともに、前記コンテンツ購入履歴格納部に格納された当該ユーザのコンテンツ購入履歴から前記検索されたコンテンツが購入済みか否かを判定し、この判定結果を含む前記コンテンツのメタデータの検索結果をメタデータ検索応答として前記ネットワークを通じて前記端末装置に送信するメタデータ検索部と
を具備する情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記端末装置からの前記ユーザおよび前記コンテンツを特定する情報を含むコンテンツの購入要求を受信したとき、前記コンテンツ購入履歴格納部の当該ユーザのコンテンツ購入履歴を更新する更新部
をさらに具備する情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記メタデータ検索要求は、前記ユーザを特定する情報を格納するための要素または属性が新たに導入されたTV-Anytimeメタデータクエリであり、
前記メタデータ検索応答は、前記コンテンツが購入済みか否かを示す情報を格納する要素または属性が新たに導入されたTV-Anytimeメタデータである
情報処理装置。
【請求項４】
請求項１に記載の情報処理装置とネットワークを通じて接続可能な端末装置であって、
ユーザを特定する情報および検索条件を含むメタデータ検索要求を前記ネットワークを通じて前記情報処理装置へ送信するメタデータ検索要求部と、
前記メタデータ検索要求に応じて前記情報処理装置から送信された、購入済みか否かの判定結果を含む前記コンテンツのメタデータの検索結果をメタデータ検索応答として受信する検索結果受信部と、
前記検索結果受信部にて受信された前記メタデータの検索結果を前記コンテンツ毎に購入済みか否かを識別可能に表示する表示部と
を具備する端末装置。
【請求項５】
請求項４に記載の端末装置であって、
前記表示部に識別可能に表示された未購入のコンテンツの購入要求を前記ネットワークを通じて前記情報処理装置へ送信する購入要求送信部
をさらに具備する端末装置。
【請求項６】
請求項５に記載の端末装置であって、
前記メタデータ検索要求は、前記ユーザを特定する情報を格納するための要素または属性が新たに導入されたTV-Anytimeメタデータクエリであり、
前記メタデータ検索応答は、前記コンテンツが購入済みか否かを示す情報を格納する要素または属性が新たに導入されたTV-Anytimeメタデータである
端末装置。
【請求項７】
ユーザ毎のコンテンツ購入履歴を格納するコンテンツ購入履歴格納部と、
複数のコンテンツのメタデータが格納されたメタデータ格納部と、
ネットワークを通じてユーザの端末装置より送信された当該ユーザを特定する情報および検索条件を含むメタデータ検索要求を受信したとき、前記メタデータ格納部から前記検索条件に合致するコンテンツのメタデータを検索するとともに、前記コンテンツ購入履歴格納部に格納された当該ユーザのコンテンツ購入履歴から前記検索されたコンテンツが購入済みか否かを判定し、この判定結果を含む前記コンテンツのメタデータの検索結果を前記ネットワークを通じて前記端末装置に送信するメタデータ検索部
として、情報処理装置が内蔵するコンピュータを機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを通じて互いに接続することが可能な情報処理装置、端末装置、およびプログラムに関する。
【背景技術】
【０００２】
IPTV（Internet Protocol Television）は、IPを利用してデジタルテレビ放送を配信するサービス、またはその放送技術の総称である。IPTVのセッション制御の標準候補はIMS（IP Multimedia Sub-system）である。IPTVの標準化における標準メタデータフォーマットの候補がTV-Anytimeメタデータである。TV-Anytimeメタデータは、ETSI（European Telecommunications Standards Institute）で規格化されたメタデータの標準である。例えば、DVB（Digital Video Broadcasting）でのIPTV標準や、ITU-TにおけるIPTV標準のメタデータフォーマットとしてTV-Anytimeメタデータが候補となっている。
【０００３】
TV-Anytimeを用いてオンラインで映像コンテンツの管理・運用を行うシステムとしては、例えば特許文献１などがある。特許文献１では、システムがユーザに薦めるコンテンツの一覧情報からユーザが視聴したいコンテンツを選択すると、このコンテンツの購入要求がコンテンツ購入処理サーバに送られる。コンテンツの購入要求には、そのコンテンツに関連付けられたメタデータから抽出されたタイトル、ジャンル、キーワードなど、そのコンテンツを特定する情報が含まれる。コンテンツ購入処理サーバはユーザ認証を行った後、コンテンツの購入要求に含まれるコンテンツを特定する情報をもとに、そのコンテンツを視聴する権利情報（ライセンス）をユーザに送出する。
【特許文献１】特開２００４−２４７８４４号公報（段落００１８−００２１）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、現在のTV-Anytimeの規定において、メタデータに対するクエリ処理は、ユーザが所望のコンテンツを探すための検索にとどまり、コンテンツの購入状況すなわちその検索されたコンテンツがユーザによって既に購入済みであるかどうかの情報までを含めて検索結果として応答するようにはなっていない。ユーザがコンテンツの購入状況を知るためには、別のクエリを使って、購入履歴に基づくコンテンツの検索をサーバに要求して、購入済みのコンテンツの照会を受けなければならなかった。したがって、購入済みのコンテンツの数が多くなるにつれて、その中から所望のコンテンツを探し出す際のユーザの負担が大きくなる。また、コンテンツの検索のためのクエリ処理に加えて、コンテンツ購入履歴の照会のためのクエリ処理がサーバで別々に実行されることは、サーバ側のクエリ処理による全体の負荷が増大する。という問題があった。
【０００５】
以上のような事情に鑑み、本発明の目的は、ユーザにより指定された検索条件に合致するコンテンツのメタデータを、そのコンテンツが当該ユーザにより購入済みか否かを示す情報とともにメタデータ検索結果として得ることのできる情報処理装置、サーバ装置、およびプログラムを提供することにある。
【課題を解決するための手段】
【０００６】
上記の課題を解決するために、本発明の第１の観点に係る情報処理装置は、ユーザ毎のコンテンツ購入履歴を格納するコンテンツ購入履歴格納部と、複数のコンテンツのメタデータが格納されたメタデータ格納部と、ネットワークを通じてユーザの端末装置より送信された当該ユーザを特定する情報および検索条件を含むメタデータ検索要求を受信したとき、前記メタデータ格納部から前記検索条件に合致するコンテンツのメタデータを検索するとともに、前記コンテンツ購入履歴格納部に格納された当該ユーザのコンテンツ購入履歴から前記検索されたコンテンツが購入済みか否かを判定し、この判定結果を含む前記コンテンツのメタデータの検索結果をメタデータ検索応答して前記ネットワークを通じて前記端末装置に送信するメタデータ検索部とを具備する。
【０００７】
本発明の情報処理装置では、端末装置より、ユーザを特定する情報および検索条件を含むメタデータ検索要求を受信したとき、検索条件に合致したコンテンツのメタデータを検索するとともに、ユーザを特定する情報をもとに、このユーザに関連付けられたコンテンツ購入履歴から、検索されたコンテンツが購入済みであるか否かを判定して、この判定結果を含むコンテンツのメタデータをユーザの端末装置に応答する。これにより、端末装置のユーザが購入済みのあるいは未購入のコンテンツを探し出す際の負担を低減できる。
【０００８】
本発明の情報処理装置は、前記端末装置からの前記ユーザおよび前記コンテンツを特定する情報を含むコンテンツの購入要求を受信したとき、前記コンテンツ購入履歴格納部の当該ユーザのコンテンツ購入履歴を更新する更新部をさらに具備するものであってもよい。
【０００９】
これにより、ユーザのコンテンツ購入履歴をリアルタイムに更新することができ、情報処理装置は、当該ユーザの端末装置からの次のメタデータ検索要求に対して最新のコンテンツ購入履歴に基づく応答を端末装置へ送信することができる。
【００１０】
本発明の情報処理装置において、前記メタデータ検索要求は、前記ユーザを特定する情報を格納するための要素または属性が新たに導入されたTV-Anytimeメタデータクエリであり、前記メタデータ検索応答は、前記コンテンツが購入済みか否かを示す情報を格納する要素または属性が新たに導入されたTV-Anytimeメタデータであってもよい。
【００１１】
本発明の第２の観点に係る端末装置は、ユーザを特定する情報および検索条件を含むメタデータ検索要求を前記ネットワークを通じて前記情報処理装置へ送信するメタデータ検索要求部と、前記メタデータ検索要求に応じて前記情報処理装置から送信された、購入済みか否かの判定結果を含む前記コンテンツのメタデータの検索結果をメタデータ検索応答として受信する検索結果受信部と、前記検索結果受信部にて受信された前記メタデータの検索結果を前記コンテンツ毎に購入済みか否かを識別可能に表示する表示部とを具備する。
【００１２】
本発明の端末装置では、ユーザを特定する情報および検索条件を含むメタデータ検索要求を情報処理装置へ送信するだけで、情報処理装置から、購入済みか否かの判定結果を含むコンテンツのメタデータの検索結果をメタデータ検索応答として取得することができる。また、メタデータの検索結果がコンテンツ毎に購入済みか否かが識別できるように表示されるので、購入済みのコンテンツと未購入のコンテンツとをユーザが一目で識別でき、ユーザの操作性が向上する。
【００１３】
本発明の端末装置は、前記表示部に識別可能に表示された未購入のコンテンツの購入要求を前記ネットワークを通じて前記情報処理装置へ送信する購入要求送信部をさらに具備するものであってもよい。これにより、メタデータ検索応答を受信してから未購入のコンテンツをユーザが購入するための処理へ即座に移行することができる。
【００１４】
本発明の第３の観点に係るプログラムは、ユーザ毎のコンテンツ購入履歴を格納するコンテンツ購入履歴格納部と、複数のコンテンツのメタデータが格納されたメタデータ格納部と、ネットワークを通じてユーザの端末装置より送信された当該ユーザを特定する情報および検索条件を含むメタデータ検索要求を受信したとき、前記メタデータ格納部から前記検索条件に合致するコンテンツのメタデータを検索するとともに、前記コンテンツ購入履歴格納部に格納された当該ユーザのコンテンツ購入履歴から前記検索されたコンテンツが購入済みか否かを判定し、この判定結果を含む前記コンテンツのメタデータの検索結果を前記ネットワークを通じて前記端末装置に送信するメタデータ検索部として、情報処理装置が内蔵するコンピュータを機能させるものである。
【発明の効果】
【００１５】
以上のように、本発明によれば、ユーザにより指定された検索条件に合致するコンテンツのメタデータを、そのコンテンツが当該ユーザにより購入済みか否かを示す情報とともにメタデータ検索結果として得ることができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態を図面に基づき説明する。
【００１７】
図１は本発明の実施の形態であるIPTVシステム１００の構成を示すブロック図である。
【００１８】
同図に示すように、この実施形態のIPTVシステム１００は、コンテンツ受信装置であるIPTVクライアント端末１０、コンテンツをストリーミングやダウンロードなどにより配信可能であるとともに、そのコンテンツを再生するために必要なライセンスを配布するIPTVサーバ２０、及びこれらを接続可能なネットワーク３０とで構成される。
【００１９】
IPTVクライアント端末１０は、例えば、PC（Personal Computer）、セットップボックス、TVなどの端末機器である。IPTVクライアント端末１０は、ユーザインターフェイス処理部１１、ユーザ認証クライアント１２、メタデータクライアント１３、IPTVメディアクライアント１４、コンテンツ購入クライアント１５などを備える。
【００２０】
IPTVサーバ２０は、具体的には１つまたは複数のサーバ装置で構成されたものである。ここでは、IPTVサーバ２０が複数のサーバ装置で構成される場合を説明する。IPTVサーバ２０は、ユーザ認証サーバ２１、メタデータサーバ２２、IPTVメディアサーバ２３、コンテンツ購入サーバ２４、ユーザアカウントデータベース２５などを備える。
【００２１】
次に、IPTVクライアント端末１０の詳細な構成を説明する。
【００２２】
ユーザインターフェイス処理部１１は、ユーザ１に対する入出力を処理する。例えば、ユーザインターフェイス処理部１１は、ユーザ１からの各種の指令を入力してユーザ認証クライアント１２、メタデータクライアント１３、IPTVメディアクライアント１４に引き渡したり、ユーザ認証クライアント１２、メタデータクライアント１３、IPTVメディアクライアント１４、コンテンツ購入クライアント１５からの各種情報をユーザ１に視覚的に掲示したりする処理を行う。
【００２３】
ユーザ認証クライアント１２は、IPTVサーバ２０内のユーザ認証サーバ２１との間でユーザ認証のために必要な処理を行う。ユーザ認証クライアント１２は、より具体的には、例えば公開鍵暗号方式などによって暗号化されたユーザＩＤおよびパスワードを含むユーザ認証要求をネットワーク３０を通じてIPTVサーバ２０内のユーザ認証サーバ２１に送信する。ユーザ認証クライアント１２は、ユーザ認証サーバ２１よりユーザ認証応答としてユーザトークンを取得した場合には、このユーザトークンとともにメタデータ検索要求の送信依頼をメタデータクライアント１３に送信する。ユーザトークンの意味については後で説明する。
【００２４】
メタデータクライアント１３は、ユーザ認証クライアント１２からのメタデータ検索要求の送信依頼をもとに、ユーザトークンを含むTV-Anytimeメタデータクエリを主体とするメタデータ検索要求をIPTVサーバ２０内のメタデータサーバ２２にネットワーク３０を通じて送信する。また、メタデータクライアント１３は、メタデータ検索要求に対してメタデータサーバ２２からネットワーク３０を通じて応答されたコンテンツのTV-Anytimeメタデータを取得する。このときメタデータサーバ２２から応答されるTV-Anytimeメタデータには、検索結果である個々のコンテンツ毎にこれがユーザ１によって既に購入済みであるか否かを示す情報が含まれている。この情報については後で説明する。メタデータクライアント１３は、取得したTV-Anytimeメタデータをユーザインターフェイス処理部１１に与えてコンテンツの一覧をユーザ１に掲示させる。
【００２５】
IPTVメディアクライアント１４は、IPTVメディアサーバ２３にアクセスして暗号化されたコンテンツのデータを取得し、事前に取得したコンテンツキーを使って、その暗号化されたコンテンツのデータを復号して再生処理を行う。
【００２６】
コンテンツ購入クライアント１５は、IPTVサーバ２０のコンテンツ購入サーバ２４に対してコンテンツを購入するために必要な処理を行う。
以上が、IPTVクライアント端末１０の構成の説明である。
【００２７】
次に、IPTVサーバ２０の構成を詳細に説明する。
【００２８】
ユーザ認証サーバ２１は、IPTVクライアント端末１０のユーザ認証クライアント１２からのユーザ認証要求を受信したとき、このユーザ認証要求に含まれるユーザＩＤとパスワードとの組み合わせとユーザアカウントデータベース２５に登録されているユーザアカウント情報とを照合してユーザ認証を行う。ここで、ユーザアカウント情報は正規ユーザのユーザＩＤ、パスワード、コンテンツ購入履歴、ユーザトークンなどを含む。これらの情報はユーザアカウントデータベース２５に互いに関連付けて格納される。ユーザ認証サーバ２１は、認証対象のユーザが正規ユーザであることを判定した場合には、当該ユーザに対してユーザトークンを生成し、このユーザトークンを含むユーザ認証応答をIPTVクライアント端末１０のユーザ認証クライアント１２にネットワーク３０を通じて送信する。
【００２９】
メタデータサーバ２２は、複数のコンテンツのメタデータを格納している。メタデータサーバ２２は、IPTVクライアント端末１０のメタデータクライアント１３よりメタデータ検索要求を受信したとき、そのメタデータ検索要求に含まれるクエリの条件にヒットしたコンテンツのメタデータを検索する。また、メタデータサーバ２２は、そのメタデータ検索要求に含まれるユーザトークンをもとにユーザアカウントデータベース２５に当該ユーザトークンと関連付けて登録されているコンテンツ購入履歴を問い合わせ、このコンテンツ購入履歴とメタデータの検索結果とからTV-Anytimeメタデータを生成して、メタデータ検索応答としてIPTVクライアント端末１０のメタデータクライアント１３にネットワーク３０を通じて送信する。
【００３０】
IPTVメディアサーバ２３は、コンテンツキーにより暗号化されたコンテンツデータを管理しており、IPTVクライアント端末１０のIPTVメディアクライアント１４からのコンテンツ取得要求に応じて、該当するコンテンツデータをネットワーク３０を通じてIPTVクライアント端末１０のIPTVメディアクライアント１４に送信する。
【００３１】
コンテンツ購入サーバ２４は、IPTVクライアント端末１０のコンテンツ購入クライアント１５との間でコンテンツの購入に関する処理を行う。コンテンツ購入サーバ２４はコンテンツ購入クライアント１５によるコンテンツの購入に伴い、ユーザアカウントデータベース２５の当該ユーザのコンテンツ購入履歴を更新する。
以上が、IPTVサーバ２０の構成の説明である。
【００３２】
次に、本実施形態のIPTVシステム１００において、IPTVクライアント端末１０がIPTVサーバ２０に対してメタデータの検索を要求し、その応答をもとにコンテンツのデータを取得するまでの動作を説明する。
【００３３】
図２はこの動作を示すフローチャートである。
まず、IPTVクライアント端末１０において、ユーザ認証クライアント１２は、例えば公開鍵暗号方式などによって暗号化されたユーザＩＤおよびパスワードを含むユーザ認証要求をネットワーク３０を通じてIPTVサーバ２０内のユーザ認証サーバ２１に送信する（ステップＳ１０１）。
【００３４】
IPTVサーバ２０において、ユーザ認証サーバ２１は、IPTVクライアント端末１０のユーザ認証クライアント１２からのユーザ認証要求を受信すると、このユーザ認証要求に含まれるユーザＩＤおよびパスワードと、ユーザアカウントデータベース２５に登録されているユーザアカウント情報とをもとにユーザ認証を行う（ステップＳ１０２）。
【００３５】
ユーザ認証サーバ２１は、ユーザ認証に成功した場合、当該ユーザに対してユーザトークンを生成し、このユーザトークンを含むユーザ認証応答をユーザ認証クライアント１２に送信する（ステップＳ１０３）。ここで、ユーザトークンとは、メタデータの検索を要求するユーザを識別するためのパスワードなどである。同じユーザＩＤでログインしたユーザであってもログイン毎に異なるユーザトークンが生成されてユーザ１に与えられる。
【００３６】
IPTVクライアント端末１０において、ユーザ認証クライアント１２はユーザ認証サーバ２１よりユーザトークンを含むユーザ認証応答を受信すると、そのユーザトークンとともにメタデータ検索要求の依頼をメタデータクライアント１３に通知する。
【００３７】
IPTVクライアント端末１０において、メタデータクライアント１３は、ユーザトークンとともにメタデータ検索要求の依頼を受けると、そのユーザトークンを用いてTV-Anytimeメタデータクエリを生成し、これを主体とするメタデータ検索要求をIPTVサーバ２０内のメタデータサーバ２２にネットワーク３０を通じて送信する（ステップＳ１０４）。
【００３８】
ここで、ユーザトークンを記述できるTV-Anytimeメタデータクエリについて説明する。図３はこのユーザトークンを記述できるTV-Anytimeメタデータクエリの例を示す図である。
【００３９】
現在のTV-Anytimeメタデータクエリのフォーマットにはユーザを識別するパラメタを記述できる要素や属性は存在しない。そこで、本実施形態では、ルート要素３１の中でユーザトークンを格納できるUserToken属性３２が新たに導入されている。また、ルート要素３１には、filteringCriterion属性３３が新たに導入されており、これは購入済みのコンテンツのメタデータとそうでないものとを区別してTV-Anytimeメタデータに記述するか否かを指定する情報である。図３の例では、その値として"PurchasedOrNot"が格納されており、これは、購入済みのコンテンツのメタデータとそうでないものとを区別して返すことを指定する値である。
【００４０】
QueryConstraints要素３４はクエリの条件を記述する要素である。この例では、コンテンツのタイトルが"News"を含むという条件が指定されている。RequestedTables要素３５はクエリの対象となるメタデータのテーブルの種類を指定する要素であり、この例では、"ProgramInformation"というテーブルの情報を返すことが指定されている。ProgramInformationとは、コンテンツの識別に関するメタデータであり、例えば、コンテンツＩＤ、コンテンツのタイトル、ジャンル、コンテンツのアクセス先であるＵＲＮ(Uniform Resource Name)などのコンテンツアクセス情報、そのコンテンツを再生するためのライセンスの配布元であるのライセンスサーバにアクセスするために必要なアクセス情報、放送時間（開始時刻、終了時刻）、コンテンツの属性や内容などの情報が含まれている。
【００４１】
動作の説明に戻る。IPTVサーバ２０において、メタデータサーバ２２は、メタデータクライアント１３からのメタデータ検索要求を受信すると、このメタデータ検索要求の主体であるTV-AnytimeメタデータクエリのQueryConstraints要素３４に格納されたクエリの条件にヒットするコンテンツのメタデータを検索する。次に、メタデータサーバ２２は、ビットしたコンテンツのメタデータのうち、TV-AnytimeメタデータクエリのRequestedTables要素３５に格納されたテーブルの種類に該当するメタデータを抽出する。この例では、コンテンツの識別に関するProgramInformationテーブルのメタデータが抽出される。続いて、メタデータサーバ２２は、ルート要素３１のuserToken属性３２に格納されたユーザトークンと関連付けられたコンテンツ購入履歴をユーザアカウントデータベース２５に問い合わせる。そして、メタデータサーバ２２は、このコンテンツ購入履歴とメタデータの検索結果とからTV-Anytimeメタデータを生成して（ステップＳ１０５）、このTV-Anytimeメタデータを主体とするメタデータ検索応答をIPTVクライアント端末１０のメタデータクライアント１３にネットワーク３０を介して送信する（ステップＳ１０６）。
【００４２】
ここで、図４を参照して、メタデータサーバ２２にて生成されIPTVクライアント端末１０に送信されるTV-Anytimeメタデータの具体例を説明する。図４はこのTV-Anytimeメタデータの具体例を示す図である。
【００４３】
get_Data_Result要素４１は、TV-Anytimeメタデータレスポンスフォーマットのルート要素である。PersonalizedResponse要素４２は、このレスポンスが個別ユーザごとにパーソナライズされていることを示す要素である。AlreadyPurchased要素４３は、このタグに囲まれているTV-Anytimeメタデータが既に購入済みのコンテンツのメタデータであることを示す。TVAMain要素４４はコンテンツのTV-Anytimeメタデータが格納される要素であり、その子要素としてProgramDescription要素４５が配置されている。ProgramDescription要素４５の中にはProgramInformationTable要素４６が配置されている。ProgramInformationTable要素４６の中にはコンテンツ毎のメタデータが格納されるProgramInformation要素４７が配置され、その中のprogramId属性の値としてコンテンツを識別するコンテンツＩＤが格納される。ProgramInformation要素４７の中にはBasicDescription要素４８が配置され、さらにその中にはコンテンツのタイトルが格納されるTitle要素４９と、コンテンツのジャンルの分類スキームを指定する情報が格納されるGenre要素５０が配置されている。そしてGenre要素４９の子要素としてジャンル名が格納されるName要素５１が配置されている。
【００４４】
NotYetPurchased要素５２は、このタグに囲まれているTV-Anytimeメタデータがまだ購入されていないコンテンツのメタデータであることを示す。このNotYetPurchased要素５２内にも、AlreadyPurchased要素４３内と同様に、TVAMain要素４４、ProgramDescription要素４５、ProgramInformationTable要素４６、ProgramInformation要素４７、BasicDescription要素４８、Title要素４９、Genre要素５０、Name要素５１がそれぞれ配置されている。
【００４５】
以上において、PersonalizedResponse要素４２、AlreadyPurchased要素４３、NotYetPurchased要素５１が、本実施形態で新たに導入された要素である。
【００４６】
動作の説明に戻る。IPTVクライアント端末１０において、メタデータクライアント１３は、IPTVサーバ２０のメタデータサーバ２２より上記のようなTV-Anytimeメタデータを主体とするメタデータ検索要求を受信すると、このTV-Anytimeメタデータをもとにコンテンツの一覧画面を生成してユーザインターフェイス処理部１１を通じてユーザ１に掲示する（ステップＳ１０７）。
【００４７】
図５はユーザ１に掲示されるコンテンツ一覧画面の表示例を示す図である。図４のTV-Anytimeメタデータにおいて、タイトルが"News1"のコンテンツは既に購入済みであることから、図５のコンテンツ一覧画面において当該コンテンツが視聴可能であることを示すマーク６１が表示される。これによりユーザ１は当該コンテンツが購入済みのコンテンツであり直ぐに視聴できることを確認できる。また、タイトルが"News2"のコンテンツは購入が済んでいないコンテンツであることから、図５のコンテンツ一覧画面において当該コンテンツが購入可能なコンテンツすなわち未購入のコンテンツであることを示すマーク６２が表示される。
【００４８】
このコンテンツ一覧画面で、ユーザインターフェイス処理部１１を通じてユーザ１により購入済みのコンテンツが選択され、その再生の指示が入力されると、ユーザインターフェイス処理部１１は、その選択されたコンテンツのコンテンツＩＤをTV-Anytimeメタデータより抽出してIPTVメディアクライアント１４に与える（ステップＳ１０８）。IPTVメディアクライアント１４は取得したコンテンツＩＤをもとに、そのコンテンツＩＤに対応する暗号化されたコンテンツのデータをIPTVメディアサーバ２３より取得し、事前に取得したコンテンツキーを使って、その暗号化されたコンテンツのデータを復号して再生処理を行う（ステップＳ１０９）。
【００４９】
次に、図５のコンテンツ一覧画面において、未購入のコンテンツが選択された場合の動作を説明する。図７は未購入のコンテンツが選択された場合の処理シーケンスである。
【００５０】
図６は図５のコンテンツ一覧画面において未購入のコンテンツが選択された場合に表示されるコンテンツ購入確認画面の例である。例えば、図５のコンテンツ一覧画面において、コンテンツの購入が可能であることを示すマーク６２はクリックボタンとして機能を有している。このマーク６２がユーザ１によってクリックされると、図６に示すように、ライセンスの購入契約事項の記述文７１と購入の承諾／非承諾をユーザ１に選択させるためのボタン７２，７３を配置したページが表示される。このページで購入の承諾ボタン７２がユーザ１によってクリックされたものとして、以降の動作を説明する。
【００５１】
ユーザインターフェイス処理部１１は、図６のコンテンツ購入確認画面で購入の承諾ボタン７２がクリックされたことを検出すると、コンテンツ購入クライアント１５に対して、コンテンツの購入依頼を通知する（ステップＳ１１０）。
【００５２】
コンテンツ購入クライアント１５は、このコンテンツの購入依頼を受けると、コンテンツを購入する処理を起動し、まず、ユーザ認証クライアント１２に対して、購入対象であるコンテンツのコンテンツＩＤを含むユーザ認証要求の依頼を送信する（ステップＳ１１１）。ユーザ認証クライアント１２は、この依頼に応じて、例えば公開鍵暗号方式などによって暗号化されたユーザＩＤおよびパスワードと、コンテンツＩＤを含むコンテンツ購入のためのユーザ認証要求をネットワーク３０を通じてIPTVサーバ２０内のユーザ認証サーバ２１に送信する（ステップＳ１１２）。
【００５３】
IPTVサーバ２０において、ユーザ認証サーバ２１は、IPTVクライアント端末１０のユーザ認証クライアント１２からのコンテンツ購入のためのユーザ認証要求を受信すると、このユーザ認証要求に含まれるユーザＩＤとパスワードとの組み合わせとユーザアカウントデータベース２５に登録されているユーザアカウント情報とをもとにユーザ認証を行う。ユーザ認証サーバ２１は、このユーザ認証に成功したならば、購入対象であるコンテンツのコンテンツＩＤを含む購入了承依頼をIPTVクライアント端末１０のコンテンツ購入クライアント１５にネットワーク３０を通じて送信する（ステップＳ１１３）。
【００５４】
IPTVクライアント端末１０において、コンテンツ購入クライアント１５は、ユーザ認証サーバ２１からの購入了承依頼を受信すると、この購入了承依頼に含まれるコンテンツＩＤをもとにTV-Anytimeメタデータから該当するコンテンツのタイトル、ジャンルなどのデータを読み出し、このデータを含むコンテンツ購入了承確認画面を生成してユーザインターフェイス処理部１１を通じてユーザ１に掲示する（ステップＳ１１４）。
【００５５】
このコンテンツ購入了承確認画面に対して、コンテンツ購入を承諾する旨がユーザインターフェイス処理部１１を通じてユーザ１より入力されると（ステップＳ１１５）、コンテンツ購入クライアント１５は、コンテンツ購入の了承通知をコンテンツ購入要求としてIPTVサーバ２０のコンテンツ購入サーバ２４にネットワーク３０を通じて送信する（ステップＳ１１６）。
【００５６】
IPTVサーバ２０において、コンテンツ購入サーバ２４は、IPTVクライアント端末１０のコンテンツ購入クライアント１５よりコンテンツ購入要求を受信すると、当該ユーザ１のユーザＩＤに対して関連付けてユーザアカウントデータベース２５に登録されているコンテンツ購入履歴の更新を行う（ステップＳ１１７）。この後、コンテンツ購入サーバ２４は、IPTVクライアント端末１０のコンテンツ購入クライアント１５に対してコンテンツ購入の完了通知をネットワーク３０を通じて送信する。
【００５７】
IPTVクライアント端末１０において、コンテンツ購入クライアント１５は、このコンテンツ購入の完了通知を受信すると、コンテンツ購入の完了をユーザインターフェイス処理部１１を通じてユーザ１に掲示する（ステップＳ１１８）。その後、購入したコンテンツの再生指示がユーザインターフェイス処理部１１を通じてユーザ１より入力されると、ユーザインターフェイス処理部１１は、その選択されたコンテンツのコンテンツＩＤをTV-Anytimeメタデータより抽出してIPTVメディアクライアント１４に与える（ステップＳ１１９）。IPTVメディアクライアント１４は取得したコンテンツＩＤをもとに、そのコンテンツＩＤに対応する暗号化されたコンテンツのデータをIPTVメディアサーバ２３より取得し、事前に取得したコンテンツキーを使って、その暗号化されたコンテンツのデータを復号して再生処理を行う（ステップＳ１２０）。
【００５８】
以上説明したように、本実施形態によれば、次のような効果が得られる。
【００５９】
IPTVサーバ２０は、IPTVクライアント端末１０よりメタデータ検索要求としてユーザトークンおよびクエリの検索条件を含むTV-Anytimeメタデータクエリを受信したとき、そのクエリの条件にヒットしたコンテンツのメタデータを検索するとともに、当該ユーザトークンに関連付けられたコンテンツ購入履歴から、検索されたコンテンツが購入済みであるか否かを判定して、この判定結果を含むコンテンツのメタデータをユーザ１のIPTVクライアント端末１０に応答する。すなわち、IPTVクライアント端末１０は、メタデータ検索要求を一回送信するだけで、クエリの条件にヒットしたコンテンツのメタデータを、コンテンツ毎に購入済みであるか否かを示す情報とともに、メタデータ検索応答として取得することができる。これにより、IPTVクライアント端末１０のユーザ１が購入済みのあるいは未購入のコンテンツを探し出す際の負担を低減できるとともに、IPTVサーバ２０でのクエリ処理による全体的な負荷を低減できる。
【００６０】
また、本実施形態によれば、メタデータの検索結果であるコンテンツの一覧が、購入済みのコンテンツと未購入のコンテンツとを一目で識別できるようにIPTVクライアント端末１０のユーザ１に掲示されるので、購入済みのコンテンツを選択して再生指示を入力する際のユーザの操作性が向上する。
【００６１】
さらに、本実施形態によれば、メタデータの検索結果であるコンテンツの一覧から未購入のコンテンツを選択して購入のための処理へ即座に移行することができる。
【００６２】
次に、本発明に係る実施形態の変形例を示す。
【００６３】
（変形例１）
図８はTV-Anytimeメタデータクエリの変形例を示す図である。この変形例は、ユーザを識別するユーザトークン（図３参照）に代えてデバイス（IPTVクライアント端末１０）を識別するデバイストークンを用いたものである。すなわち、図８では、"deviceToken"という名前の属性１３２がルート要素３１の属性として新たに導入され、"abcdef1234"がdeviceToken属性１３２の値（デバイストークン）として指定されている。TV-Anytimeメタデータクエリのその他の要素は図３と同じである。ユーザアカウントデータベース２５には、このデバイストークンに関連付けてユーザＩＤおよびコンテンツ購入履歴などが登録される。その他の動作は同じである。
【００６４】
（変形例２）
次に、TV-Anytimeメタデータクエリの第２の変形例と、このTV-Anytimeメタデータクエリに対する応答であるTV-Anytimeメタデータの第１の変形例を説明する。
【００６５】
図９はTV-Anytimeメタデータクエリの第２の変形例を示す図である。このTV-Anytimeメタデータクエリでは、図３に示したTV-Anytimeメタデータクエリからルート要素３１中のfilteringCriterion属性３３が除かれている。
【００６６】
図１０は図９のTV-Anytimeメタデータクエリに対する応答であるTV-Anytimeメタデータの変形例を示す図である。図４に示したTV-Anytimeメタデータに採用されたPersonalizedResponse要素４２とAlreadyPurchased要素４３は、この変形例では採用されていない。
【００６７】
このTV-Anytimeメタデータの変形例において、個々のコンテンツに対応するメタデータが格納される要素であるProgramInformation要素４７の中にはコンテンツの購入に関する情報が格納されるPurchaseList要素８１が配置されている。PurchaseList要素８１の下位にはコンテンツの購入履歴に関する情報が格納されるDRMDeclaration要素８５が配置されている。当該コンテンツが購入済みならば、DRMDeclaration要素８５の子要素としてLicenseExpression要素８６が付加され、その子要素として、ライセンスの識別子を格納したLicenseID要素８７と、ライセンスを取得するための情報が格納されたDRMControlMessage要素８８とが付加される。
【００６８】
したがって、IPTVクライアント端末１０において、メタデータクライアント１３は、IPTVサーバ２０のメタデータサーバ２２より上記のようなTV-Anytimeメタデータを主体とするメタデータ検索要求を受信すると、このTV-AnytimeメタデータのDRMDeclaration要素８５の下位にLicenseExpression要素８６が存在するかどうかにより、当該コンテンツが購入済みであるかどうかを判別して、コンテンツの一覧画面を生成することができる。すなわち、図１０において、一つのProgramInformation要素４７の中のDRMDeclaration要素８５の下位にはLicenseExpression要素８６が存在することから、コンテンツが購入済みであることが判別され、二つ目のProgramInformation要素４７ａの中にはそれが存在しないので、コンテンツが未購入であることが判別される。
【００６９】
なお、PurchaseList要素８１内には、DRMDeclaration要素８５の他に、Price要素８３、Purchase要素８４などが配置されている。Price要素８３にはコンテンツの購入価格が格納される。図１０の例では"２００円"という購入価格が格納されている。Purchase要素８４にはPurchaseType href属性、PurchaseType href属性、QuantityRange max属性等が設けられている。これらの属性によりコンテンツの購入に関する詳細内容が指定される。ここで、PurchaseType href属性は購入の形式を指定するための属性であり、図１０の例では"PlayForPeriod"が属性値として指定されている。これは"期限付きの再生"を意味している。QuantityUnit href属性は期間の単位を指定するための属性、QuantityRange max属性はその期間単位の数を指定するための属性である。図１０の例では、QuantityUnit href属性の値として"month"が指定され、QuantityRange max属性の値として"1"が指定されている。これらは"一ヶ月間"を意味している。したがって、図１０のPurchase要素８４には"一ヶ月間の期限付きの再生"というデータが格納されている。
【００７０】
（変形例３）
以上の実施形態および変形例では、TV-Anytime メタデータクエリのルート要素の属性値としてユーザトークンあるいはデバイストークンを格納する場合を示したが、図１１に示すように、HTTPヘッダのヘッダーフィールドにユーザトークンあるいはデバイストークンを格納する方式も考えられる。
【００７１】
図１２は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【００７２】
このコンピュータ２００において、CPU(Central Processing Unit)２０１，ROM(Read Only Memory)２０２，RAM(Random Access Memory)２０３は、バス２０４により相互に接続されている。
【００７３】
バス２０４には、さらに、入出力インタフェース２０５が接続されている。入出力インタフェース２０５には、キーボード、マウス、マイクロホンなどよりなる入力部２０６、ディスプレイ、スピーカなどよりなる出力部２０７、ハードディスクや不揮発性のメモリなどよりなる記憶部２０８、ネットワークインタフェースなどよりなる通信部２０９、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア２１１を駆動するドライブ２１０が接続されている。
【００７４】
以上のように構成されるコンピュータ２００では、CPU２０１が、例えば、記憶部２０８に記憶されているプログラムを、入出力インタフェース２０５およびバス２０４を介して、RAM２０３にロードして実行することにより、上述した一連の処理が行われる。
【００７５】
なお、コンピュータ２００が実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたときなどの必要なタイミングで処理が行われるプログラムであっても良い。
【００７６】
また、プログラムは、１台のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【００７７】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【００７８】
【図１】本発明の実施の形態であるIPTVシステムの構成を示す図である。
【図２】図１のIPTVシステムにおいて、IPTVクライアント端末がIPTVサーバに対してメタデータの検索を要求し、その応答をもとにコンテンツのデータを取得するまでの動作シーケンスを示す図である。
【図３】ユーザトークンを記述できるTV-Anytimeメタデータクエリの例を示す図である。
【図４】TV-Anytimeメタデータの具体例を示す図である。
【図５】コンテンツ一覧画面の表示例を示す図である。
【図６】コンテンツ購入確認画面の例である。
【図７】未購入のコンテンツが選択された場合の処理シーケンスである。
【図８】TV-Anytimeメタデータクエリの変形例を示す図である。
【図９】TV-Anytimeメタデータクエリの第２の変形例を示す図である。
【図１０】図９のTV-Anytimeメタデータクエリに対する応答であるTV-Anytimeメタデータの変形例を示す図である。
【図１１】HTTPヘッダのヘッダーフィールドにユーザトークンあるいはデバイストークンを格納する方法を説明する図である。
【図１２】コンピュータのハードウェアの構成例を示すブロック図である。
【符号の説明】
【００７９】
１０…IPTVクライアント端末
１１…ユーザインターフェイス処理部
１２…ユーザ認証クライアント
１３…メタデータクライアント
１４…IPTVメディアクライアント
１５…コンテンツ購入クライアント
２０…IPTVサーバ
２１…ユーザ認証サーバ
２２…メタデータサーバ
２３…IPTVメディアサーバ
２４…コンテンツ購入サーバ
２５…ユーザアカウントデータベース
３０…ネットワーク
１００…IPTVシステム
【図１】
2010028584.tif 000003
【図２】
2010028584.tif 000004
【図３】
2010028584.tif 000005
【図４】
2010028584.tif 000006
【図５】
2010028584.tif 000007
【図６】
2010028584.tif 000008
【図７】
2010028584.tif 000009
【図８】
2010028584.tif 000010
【図９】
2010028584.tif 000011
【図１０】
2010028584.tif 000012
【図１１】
2010028584.tif 000013
【図１２】
2010028584.tif 000014