特許第6581776号(P6581776)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ サターン ライセンシング エルエルシーの特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6581776
(24)【登録日】2019年9月6日
(45)【発行日】2019年9月25日
(54)【発明の名称】情報処理装置および情報処理方法
(51)【国際特許分類】
   H04N 21/454 20110101AFI20190912BHJP
   H04N 21/443 20110101ALI20190912BHJP
   H04N 21/475 20110101ALI20190912BHJP
   G06F 13/00 20060101ALI20190912BHJP
   G06F 16/9035 20190101ALI20190912BHJP
【FI】
   H04N21/454
   H04N21/443
   H04N21/475
   G06F13/00 547T
   G06F16/9035
【請求項の数】17
【全頁数】40
(21)【出願番号】特願2014-543246(P2014-543246)
(86)(22)【出願日】2013年10月16日
(86)【国際出願番号】JP2013078039
(87)【国際公開番号】WO2014065166
(87)【国際公開日】20140501
【審査請求日】2016年10月12日
(31)【優先権主張番号】61/719,041
(32)【優先日】2012年10月26日
(33)【優先権主張国】US
(31)【優先権主張番号】13/894,779
(32)【優先日】2013年5月15日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】316009762
【氏名又は名称】サターン ライセンシング エルエルシー
【氏名又は名称原語表記】Saturn Licensing LLC
(74)【代理人】
【識別番号】100121131
【弁理士】
【氏名又は名称】西川 孝
(74)【代理人】
【識別番号】100082131
【弁理士】
【氏名又は名称】稲本 義雄
(72)【発明者】
【氏名】山岸 靖明
【審査官】 古川 哲也
(56)【参考文献】
【文献】 国際公開第2012/026388(WO,A1)
【文献】 特開2005−130196(JP,A)
【文献】 特表2005−525755(JP,A)
【文献】 特開2003−101893(JP,A)
【文献】 特表2002−528971(JP,A)
【文献】 特表2009−519624(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 − 21/858
G06F 13/00
G06F 16/90 − 16/958
(57)【特許請求の範囲】
【請求項1】
サーバから配信されるコンテンツを取得する情報処理装置において、
前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答を表す情報であるユーザ側回答情報を生成する回答生成部と、
前記ユーザ側回答情報と、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチング部と
を備え、
前記マッチング部は、ウェブアプリケーションとして提供され、前記サーバからの前記提供者側回答情報に対応する前記ユーザ側回答情報の有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIを呼び出すことで、前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行う
情報処理装置。
【請求項2】
前記回答生成部により生成された前記ユーザ側回答情報を記憶する記憶部をさらに備え、
前記マッチング部は、複数の前記APIを呼び出すことで、前記記憶部に記憶されている前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行う
請求項1に記載の情報処理装置。
【請求項3】
前記マッチング部は、前記記憶部から前記ユーザ側回答情報を取得するためのユーザ側回答情報取得APIを呼び出す
請求項2に記載の情報処理装置。
【請求項4】
前記マッチング部は、前記サーバから前記提供者側回答情報を取得するための提供者側回答情報取得APIを呼び出す
請求項2に記載の情報処理装置。
【請求項5】
前記マッチング部は、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記提供者側回答情報に対応する前記ユーザ側回答情報が記憶されているか否かを評価するためのユーザ側回答情報評価APIを呼び出し、
評価結果が真となった前記提供者側回答情報に対応する前記コンテンツを取得する
請求項2に記載の情報処理装置。
【請求項6】
前記マッチング部は、マッチングの結果を用いて前記コンテンツを取得するためのコンテンツ取得APIを呼び出す
請求項2に記載の情報処理装置。
【請求項7】
前記マッチング部は、前記ユーザ側回答情報と、前記サーバから送信されてくる、前記提供者によって設定された前記回答の組み合わせを示すクエリとのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得する
請求項2に記載の情報処理装置。
【請求項8】
前記マッチング部は、前記サーバから前記クエリを取得するためのクエリ取得APIを呼び出す
請求項7に記載の情報処理装置。
【請求項9】
前記マッチング部は、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記クエリに対応する前記ユーザ側回答情報が記憶されているか否かを評価するためのユーザ側回答情報評価APIを呼び出し、
評価結果が真となった前記クエリに対応する前記コンテンツを取得する
請求項7に記載の情報処理装置。
【請求項10】
サーバから配信されるコンテンツを取得する情報処理装置の情報処理方法であって、
前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答を表す情報であるユーザ側回答情報を生成する回答生成ステップと、
前記ユーザ側回答情報と、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチングステップと
を含み、
前記マッチングステップは、ウェブアプリケーション上で、前記サーバからの前記提供者側回答情報に対応する前記ユーザ側回答情報の有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIが呼び出されることで、前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行う
情報処理方法。
【請求項11】
サーバから配信されるコンテンツを取得する情報処理装置において、
前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答の組み合わせを示すクエリを生成するクエリ生成部と、
前記クエリと、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチング部と
を備え、
前記マッチング部は、ウェブアプリケーションとして提供され、前記サーバからの前記提供者側回答情報に対応する前記クエリの有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIを呼び出すことで、前記クエリと前記提供者側回答情報とのマッチングを行う
情報処理装置。
【請求項12】
前記クエリ生成部により生成された前記クエリを記憶する記憶部をさらに備え、
前記マッチング部は、複数の前記APIを呼び出すことで、前記記憶部に記憶されている前記クエリと前記提供者側回答情報とのマッチングを行う
請求項11に記載の情報処理装置。
【請求項13】
前記マッチング部は、前記記憶部から前記クエリを取得するためのクエリ取得APIを呼び出す
請求項12に記載の情報処理装置。
【請求項14】
前記マッチング部は、前記サーバから前記提供者側回答情報を取得するための提供者側回答情報取得APIを呼び出す
請求項12に記載の情報処理装置。
【請求項15】
前記マッチング部は、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記提供者側回答情報に対応する前記クエリが記憶されているか否かを評価するためのクエリ評価APIを呼び出し、
評価結果が真となった前記提供者側回答情報に対応する前記コンテンツを取得する
請求項12に記載の情報処理装置。
【請求項16】
前記マッチング部は、マッチングの結果を用いて前記コンテンツを取得するためのコンテンツ取得APIを呼び出す
請求項12に記載の情報処理装置。
【請求項17】
サーバから配信されるコンテンツを取得する情報処理装置の情報処理方法であって、
前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答の組み合わせを示すクエリを生成するクエリ生成ステップと、
前記クエリと、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチングステップと
を含み、
前記マッチングステップは、ウェブアプリケーション上で、前記サーバからの前記提供者側回答情報に対応する前記クエリの有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIが呼び出されることで、前記クエリと前記提供者側回答情報とのマッチングを行う
情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は、情報処理装置および情報処理方法に関し、特に、メタデータに応じてコンテンツを取得することができるようにする情報処理装置および情報処理方法に関する。
【背景技術】
【0002】
近年、テレビジョン放送のデジタル化に伴い、同時に放送できる情報量が飛躍的に増加したことにより、リアルタイムに視聴されるテレビジョン番組(コンテンツ)とともに、各種のデータを同時に放送することがなされている。
【0003】
また、コンテンツの通信経路として、上述したテレビジョン放送と、高速なデータのダウンロードが可能なインターネットとを使い分けるようにしたコンテンツダウンロードサービスが提案されている(例えば、特許文献1参照)。
【0004】
ところで、一般的なコンテンツダウンロードサービスにおいては、コンテンツを提供(配信)するプロバイダ(コンテンツプロバイダやサービスプロバイダ)側のサーバにおいて設定されたフィルタリング属性(フィルタリングインデックス、フィルタリングメタデータ等ともいう)を、メタデータとしてコンテンツに付与することで、コンテンツを受信(取得)するクライアントにおけるコンテンツのフィルタリング(取捨選択)が行われるようになされている。
【0005】
フィルタリング属性は、ATSC(Advanced Television Standard Committee)やARIB(Association of Radio Industries and Businesses)等の標準化団体によって規定されたメタデータセットの中から選択されたメタデータの要素についての値として設定される。
【0006】
すなわち、例えば、メタデータの要素として“視聴対象”が選択され、メタデータの要素についての値として“10代”が設定されたフィルタリング属性が付与されたコンテンツは、「“視聴対象が10代”である視聴者向けのコンテンツ」を取得するようにフィルタリングを行うクライアントに提供されるようになる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2010−21988号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、標準化団体によって規定されたメタデータセットに含まれないメタデータ(フィルタリング属性)を、コンテンツに付与することはなされていない。
【0009】
例えば、プロバイダ側が、「“視聴対象が10代”であり、かつ、“就職活動に興味がある”視聴者向けのコンテンツ」を配信したい場合であっても、標準化団体によって規定されたメタデータセットの中に、“就職活動に興味があるか否か”がメタデータの要素として存在しない場合には、コンテンツに、メタデータの要素として“就職活動に興味がある”が設定されたフィルタリング属性を付与することはできなかった。
【0010】
したがって、プロバイダ側では、その時のニーズに応じた(例えば、流行を考慮した)、視聴者の関心事をメタデータとして付与したコンテンツを配信することはできなかった。
【0011】
また、このような場合、クライアント側においては、その時のニーズに応じたコンテンツを取得するようにフィルタリングを行うことはできなかった。
【0012】
本技術は、このような状況に鑑みてなされたものであり、その時のニーズに応じたコンテンツを取得することができるようにするものである。
【課題を解決するための手段】
【0013】
本技術の第1の側面の情報処理装置は、サーバから配信されるコンテンツを取得する情報処理装置であって、前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答を表す情報であるユーザ側回答情報を生成する回答生成部と、前記ユーザ側回答情報と、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチング部とを備え、前記マッチング部は、ウェブアプリケーションとして提供され、前記サーバからの前記提供者側回答情報に対応する前記ユーザ側回答情報の有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIを呼び出すことで、前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行う。
【0014】
前記情報処理装置には、前記回答生成部により生成された前記ユーザ側回答情報を記憶する記憶部をさらに設け、前記マッチング部には、複数の前記APIを呼び出すことで、前記記憶部に記憶されている前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行わせることができる。
【0015】
前記マッチング部には、前記記憶部から前記ユーザ側回答情報を取得するためのユーザ側回答情報取得APIを呼び出させることができる。
【0016】
前記マッチング部には、前記サーバから前記提供者側回答情報を取得するための提供者側回答情報取得APIを呼び出させることができる。
【0017】
前記マッチング部には、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記提供者側回答情報に対応する前記ユーザ側回答情報が記憶されているか否かを評価するためのユーザ側回答情報評価APIを呼び出させ、評価結果が真となった前記提供者側回答情報に対応する前記コンテンツを取得させることができる。
【0018】
前記マッチング部には、マッチングの結果を用いて前記コンテンツを取得するためのコンテンツ取得APIを呼び出させることができる。
【0019】
前記マッチング部には、前記ユーザ側回答情報と、前記サーバから送信されてくる、前記提供者によって設定された前記回答の組み合わせを示すクエリとのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得させることができる。
【0020】
前記マッチング部には、前記サーバから前記クエリを取得するためのクエリ取得APIを呼び出させることができる。
【0021】
前記マッチング部は、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記クエリに対応する前記ユーザ側回答情報が記憶されているか否かを評価するためのユーザ側回答情報評価APIを呼び出させ、評価結果が真となった前記クエリに対応する前記コンテンツを取得させることができる。
【0022】
本技術の第1の側面の情報処理方法は、サーバから配信されるコンテンツを取得する情報処理装置の情報処理方法であって、前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答を表す情報であるユーザ側回答情報を生成する回答生成ステップと、前記ユーザ側回答情報と、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチングステップとを含み、前記マッチングステップは、ウェブアプリケーション上で、前記サーバからの前記提供者側回答情報に対応する前記ユーザ側回答情報の有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIが呼び出されることで、前記ユーザ側回答情報と前記提供者側回答情報とのマッチングを行う。
【0023】
本技術の第1の側面においては、サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、質問に対するユーザの回答を表す情報であるユーザ側回答情報が生成され、ユーザ側回答情報と、サーバから送信されてくる、質問に対して、コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングが行われることで、サーバから配信されるコンテンツが取得される。サーバからの提供者側回答情報に対応するユーザ側回答情報の有無を評価するためのAPIを含む複数のAPIが呼び出されることで、ユーザ側回答情報と提供者側回答情報とのマッチングが行われる。
【0024】
本技術の第2の側面の情報処理装置は、サーバから配信されるコンテンツを取得する情報処理装置であって、前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答の組み合わせを示すクエリを生成するクエリ生成部と、前記クエリと、前記サーバから送信されてくる、前記質問に対して、前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチング部とを備え、前記マッチング部は、ウェブアプリケーションとして提供され、前記サーバからの前記提供者側回答情報に対応する前記クエリの有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIを呼び出すことで、前記クエリと前記提供者側回答情報とのマッチングを行う。
【0025】
前記情報処理装置には、前記クエリ生成部により生成された前記クエリを記憶する記憶部をさらに設け、前記マッチング部には、複数の前記APIを呼び出すことで、前記記憶部に記憶されている前記クエリと前記提供者側回答情報とのマッチングを行わせることができる。
【0026】
前記マッチング部には、前記記憶部から前記クエリを取得するためのクエリ取得APIを呼び出させることができる。
【0027】
前記マッチング部には、前記サーバから前記提供者側回答情報を取得するための提供者側回答情報取得APIを呼び出させることができる。
【0028】
前記マッチング部には、前記記憶部がデータベースとして構成される場合、前記記憶部に、前記提供者側回答情報に対応する前記クエリが記憶されているか否かを評価するためのクエリ評価APIを呼び出させ、評価結果が真となった前記提供者側回答情報に対応する前記コンテンツを取得させることができる。
【0029】
前記マッチング部には、マッチングの結果を用いて前記コンテンツを取得するためのコンテンツ取得APIを呼び出させることができる。
【0030】
本技術の第2の側面の情報処理方法は、サーバから配信されるコンテンツを取得する情報処理装置の情報処理方法であって、前記サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、前記質問に対する前記ユーザの回答の組み合わせを示すクエリを生成するクエリ生成ステップと、前記クエリと、前記サーバから送信されてくる、前記質問に対して前記コンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングを行うことで、前記サーバから配信される前記コンテンツを取得するマッチングステップとを含み、前記マッチングステップは、ウェブアプリケーション上で、前記サーバからの前記提供者側回答情報に対応する前記クエリの有無を評価するためのAPI(Application Programming Interface)を含む複数のAPIを呼び出されることで、前記クエリと前記提供者側回答情報とのマッチングを行う。
【0031】
本技術の第2の側面においては、サーバから送信されてくる、ユーザの嗜好についての質問を表す情報である質問情報に対応して、質問に対するユーザの回答の組み合わせを示すクエリが生成され、クエリと、サーバから送信されてくる、質問に対してコンテンツを提供する提供者が設定した回答を表す情報である提供者側回答情報とのマッチングが行われることで、サーバから配信されるコンテンツが取得される。サーバからの提供者側回答情報に対応するクエリの有無を評価するためのAPIを含む複数のAPIが呼び出されることで、クエリと提供者側回答情報とのマッチングが行われる。
【発明の効果】
【0032】
本技術の第1および第2の側面によれば、その時のニーズに応じたコンテンツを取得することが可能となる。
【図面の簡単な説明】
【0033】
図1】本技術の一実施の形態に係る放送システムの構成例を示すブロック図である。
図2】サーバのハードウェア構成例を示すブロック図である。
図3】サーバの機能構成例を示すブロック図である。
図4】クライアントの機能構成例を示すブロック図である。
図5】コンテンツの送受信処理について説明するフローチャートである。
図6】XMLスキーマのシンタックスの例について説明する図である。
図7】PDI-Qの例について説明する図である。
図8】ユーザとの対話における画面表示例について説明する図である。
図9】ユーザとの対話における画面表示例について説明する図である。
図10】ユーザとの対話における画面表示例について説明する図である。
図11】ユーザとの対話における画面表示例について説明する図である。
図12】ユーザとの対話における画面表示例について説明する図である。
図13】PDI-Aの例について説明する図である。
図14】プロバイダ側PDI-Aの例について説明する図である。
図15】プロバイダ側PDI-Aの例について説明する図である。
図16】マッチング処理の詳細について説明するフローチャートである。
図17】マッチング処理の詳細について説明するフローチャートである。
図18】サーバの他の機能構成例を示すブロック図である。
図19】コンテンツの送受信処理について説明するフローチャートである。
図20】マッチング処理の詳細について説明するフローチャートである。
図21】マッチング処理の詳細について説明するフローチャートである。
図22】クライアントの他の機能構成例を示すブロック図である。
図23】コンテンツの送受信処理について説明するフローチャートである。
図24】マッチング処理の詳細について説明するフローチャートである。
図25】マッチング処理の詳細について説明するフローチャートである。
図26】本技術を適用した、ATSC-M/H方式で放送を行う放送システムの構成例を示すブロック図である。
図27】ATSC-M/H方式で送信される放送波の信号におけるプロトコルスタックを示す図である。
図28】Service Guideのデータ構成を示す図である。
図29】Serviceフラグメントの構成を説明する図である。
図30】Scheduleフラグメントの構成を説明する図である。
図31】Contentフラグメントの構成を説明する図である。
図32】Interactivity Dataフラグメントの構成を説明する図である。
図33】NRT放送で送信される放送波の信号におけるプロトコルスタックを示す図である。
図34】TVCT、PAT、PMT、およびDSM-CC Addressable Sectionのデータ構造を示す図である。
図35】SMT、NRT-IT、およびFLUTE FDTのデータ構造を示す図である。
図36】PDI descriptorのシンタックスの例を示す図である。
【発明を実施するための形態】
【0034】
以下、本技術の実施の形態について図を参照して説明する。
【0035】
[放送システムの構成例]
図1は、本技術の一実施の形態に係る放送システムの構成例を示している。
【0036】
図1の放送システム10は、デジタルテレビジョン番組(以下、適宜コンテンツという)を放送(提供)する放送事業者などのプロバイダ側に設置されたサーバ11、および、放送されたコンテンツを視聴するユーザ宅などに設置されたクライアント端末(以下、単にクライアントという)12により構成されている。なお、クライアント12は、複数のユーザ宅のそれぞれに設置されるものとするが、携帯電話機やPDA(Personal Digital Assistant)等の携帯型端末装置として構成されるようにもできる。
【0037】
放送システム10において、サーバ11は、コンテンツとともに、そのコンテンツに関するコンテンツメタデータを、デジタル放送波の信号として、クライアント12に送出する。クライアント12は、コンテンツとともに送出されるコンテンツメタデータを基に、コンテンツをフィルタリングすることにより、ユーザの所望するコンテンツのみを再生または蓄積する。なお、コンテンツメタデータは、コンテンツとともに送出されるのではなく、コンテンツが送出されるより前に送出されるようにしてもよい。
【0038】
[サーバのハードウェア構成例]
図2は、サーバ11のハードウェア構成例を表している。図2においては、サーバ11は、例えばコンピュータをベースに構成されている。
【0039】
CPU(Central Processing Unit)21は、ROM(Read Only Memory)22に記憶されているプログラム、または記憶部28からRAM(Random Access Memory)23にロードされたプログラムに従って各種の処理を実行する。RAM23にはまた、CPU21が各種の処理を実行する上において必要なデータなども適宜記憶される。
【0040】
CPU21、ROM22、およびRAM23は、バス24を介して相互に接続されている。このバス24にはまた、入出力インタフェース25も接続されている。
【0041】
入出力インタフェース25には、キーボード、マウスなどよりなる入力部26、LCD(Liquid Crystal Display)や有機EL(Electro Luminescence)などよりなるディスプレイ、並びにスピーカなどよりなる出力部27、ハードディスクなどより構成される記憶部28、モデム、ターミナルアダプタなどより構成される通信部29が接続されている。通信部29は、図示せぬネットワークを介して外部の装置と通信する。また、通信部29を介してプログラムが取得され、記憶部28に記憶されるようにしてもよい。
【0042】
入出力インタフェース25にはまた、必要に応じてドライブ30が接続され、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア31が適宜装着され、それらから読み出されたコンピュータプログラムが、必要に応じて記憶部28にインストールされる。
【0043】
なお、図示は省略するが、クライアント12も同様に、そのハードウェアは図2に示されるように構成される。
【0044】
[サーバの機能構成例]
次に、図3を参照して、サーバ11の機能構成例について説明する。
【0045】
サーバ11は、PDI-Qジェネレータ41、通信部42、PDI-Aジェネレータ43、メタデータディストリビュータ44、コンテンツ蓄積部45、およびコンテンツディストリビュータ46から構成される。
【0046】
PDI-Qジェネレータ41は、クライアント12のユーザ(視聴者)の嗜好についての質問を表す情報であるPDI-Q(Preference Demographic and Interest - Question)を生成し、通信部42を介してクライアント12に送信するとともに、PDI-Aジェネレータ43に供給する。
【0047】
通信部42は、クライアント12からの要求に応じて、PDI-Qジェネレータ41、メタデータディストリビュータ44、およびコンテンツディストリビュータ46から供給される各種データを、クライアント12に送信する。
【0048】
PDI-Aジェネレータ43は、PDI-Qジェネレータ41からのPDI-Qに基づいて、PDI-Qに対応する、上述したクライアント12のユーザの嗜好についての質問に対して、プロバイダ側が設定した回答を表す情報であるPDI-A(Preference Demographic and Interest - Answer)を生成し、メタデータディストリビュータ44に供給する。
【0049】
メタデータディストリビュータ44は、PDI-Aジェネレータ43からのPDI-Aに基づいて、コンテンツ蓄積部45に蓄積されているコンテンツの中から、プロバイダ側が設定した回答に対応するコンテンツを特定(照会)する。メタデータディストリビュータ44は、特定したコンテンツのコンテンツメタデータとして、PDI-Aを含むコンテンツメタデータを生成し、通信部42を介してクライアント12に送信する。
【0050】
コンテンツ蓄積部45は、クライアント12に対して配信される種々のコンテンツを蓄積している。
【0051】
コンテンツディストリビュータ46は、コンテンツ蓄積部45に蓄積されているコンテンツの中からメタデータディストリビュータ44によって特定されたコンテンツを取得し、通信部42を介してクライアント12に送信する。
【0052】
[クライアントの機能構成例]
次に、図4を参照して、クライアント12の機能構成例について説明する。
【0053】
クライアント12は、通信部51、PDI-Aジェネレータ52、PDIストア53、コンテンツフィルタ54、コンテンツ再生部55、およびコンテンツ蓄積部56から構成される。
【0054】
通信部51は、サーバ11から送信されてきた各種データを受信し、PDI-Aジェネレータ52またはコンテンツフィルタ54に供給する。また、通信部51は、サーバ11に対する要求を、サーバ11に送信する。
【0055】
PDI-Aジェネレータ52は、サーバ11から送信されてきたPDI-Qに基づいて、PDI-Qに対応する、クライアント12のユーザの嗜好についての質問に対するユーザの回答を表すPDI-Aを生成し、PDIストア53に格納する。
【0056】
PDIストア53は、PDI-Aジェネレータ52からのPDI-Aを記憶する。PDIストア53に記憶されているPDI-Aは、ファイルシステムによりアクセスされ、必要に応じて、コンテンツフィルタ54に読み出される。
【0057】
コンテンツフィルタ54は、PDIストア53からPDI-Aを読み出し、そのPDI-Aと、サーバ11から送信されてきたコンテンツのコンテンツメタデータに含まれているPDI-Aとのマッチングを行うことで、サーバ11から配信されるコンテンツをフィルタリングする。コンテンツフィルタ54は、フィルタリングの結果に応じて、フィルタリングしたコンテンツをコンテンツ再生部55またはコンテンツ蓄積部56に供給する。なお、コンテンツフィルタ54は、ウェブブラウザ上で実行されるウェブアプリケーションとして提供され、複数のAPI(Application Programming Interface)を呼び出すことでマッチングを行い、コンテンツをフィルタリングする。
【0058】
コンテンツ再生部55は、コンテンツフィルタ54からのコンテンツを再生する。また、コンテンツ再生部55は、コンテンツ蓄積部56からコンテンツを取得し、そのコンテンツを再生する。
【0059】
コンテンツ蓄積部56は、コンテンツフィルタ54からのコンテンツを蓄積(記録)する。
【0060】
[コンテンツの送受信処理の例]
次に、図5のフローチャートを参照して、放送システム10におけるコンテンツの送受信処理について説明する。放送システム10におけるコンテンツの送受信処理においては、サーバ11によりコンテンツ配信処理が実行されることでコンテンツが配信され、クライアント12によりコンテンツ取得処理が実行されることでコンテンツが取得される。
【0061】
放送事業者などのプロバイダ側において、例えば、放送(配信)されるコンテンツのスポンサや、放送事業者自身が、特定の嗜好や属性を有する視聴者に対するコンテンツの配信を要求した場合、プロバイダ側のスタッフの操作に応じて、サーバ11のPDI-Qジェネレータ41は、ステップS11において、視聴者、すなわち、クライアント12のユーザに対して、どのような嗜好や属性を有するかを質問するためのPDI-Qを生成する。
【0062】
[XMLスキーマのシンタックスの例]
ここで、図6を参照して、PDI-QおよびPDI-Aを構成するためのXML(Extensible Markup Language)スキーマのシンタックスの例について説明する。
【0063】
図6において、1行目は、PDI-Qが識別されるための宣言や定義を示しており、2行目は、PDI-Qとして定義される質問全体の名称および型の宣言を示している。
【0064】
3行目乃至12行目は、2行目で宣言された質問のそれぞれについての名称および型の宣言を示している。具体的には、5行目の”QIA”の名称で定義される質問の型”IntegerAnswerType”は、その質問が整数値型の回答を求める質問であることを示しており、6行目の”QBA”の名称で定義される質問の型”BooleanAnswerType”は、その質問が論理値型の回答を求める質問であることを示している。また、7行目の”QSA”の名称で定義される質問の型”SelectionAnswerType”は、その質問が回答選択型の回答を求める質問であることを示しており、8行目の”QTA”の名称で定義される質問の型”TextAnswerType”は、その質問が文字列型の回答を求める質問であることを示している。そして、9行目の”QAA”の名称で定義される質問の型”AnyAnswerType”は、その質問が回答の型を制限しない質問であることを示している。
【0065】
13行目乃至44行目は、上述のように宣言された質問のうちの、”QIA”、”QBA”、”QSA”、および”QTA”の名称で定義される質問それぞれの要素の宣言を示している。特に、15行目、24行目、31行目、40行目に示されるid要素は、それぞれの質問の項目を識別するためのID(Identifier)を表しており、その第1のフォーマットとして、
“common:[category:]question-ID”
と定義される。この第1のフォーマットにおいて、“common”は、そのid要素で識別される質問がプロバイダに関わらず共通に定義された質問であることを表し、“category”は、質問のカテゴリを表し、“question-ID”は、質問の識別子を表している。なお、“category”は、必要に応じて、
“common:[category1:category2:category3:・・・]question-ID”
などのように、階層的なネスト構造としてもよい。
【0066】
また、id要素は、第2のフォーマットとして、
“providerName:[category:]question-ID”
と定義される。この第2のフォーマットにおいて、“providerName”は、そのid要素で識別される質問を設定したプロバイダの名称を表している。なお、“category”および“question-ID”は、第1のフォーマットにおけるそれぞれと同様である。
【0067】
このように、PDI-Qとして定義される質問は、id要素によって、コンテンツを提供するプロバイダによらない(プロバイダ共通の)質問と、コンテンツを提供するプロバイダ独自に定義される質問とに区別される。
【0068】
以下においては、適宜、コンテンツを提供するプロバイダによらない質問、およびその質問に対する回答を、プロバイダ共通フィルタリングパラメータといい、コンテンツを提供するプロバイダ独自に定義される質問、およびその質問に対する回答を、プロバイダ独自フィルタリングパラメータということとする。
【0069】
上述したように、プロバイダ共通フィルタリングパラメータは、個々のプロバイダによらず、プロバイダ共通に定義されるため、一般的には、クライアント12のベンダ(製造メーカ等)が提供することとなる。したがって、サーバ11におけるPDI-Qジェネレータ41は、プロバイダ側によって提供されるようにもできるが、クライアント12のベンダによって提供されるようにもできる。
【0070】
なお、PDI-QおよびPDI-Aを構成するシンタックスは、図6で示された例に限られない。
【0071】
[PDI-Qの例]
次に、図7を参照して、図6のシンタックスに基づいて構成されるPDI-Qの例について説明する。
【0072】
図7において、1行目における”transactional”は、PDI-Qで定義されている質問(質問群)が、送信されたクライアント12において更新される際、PDI-Qの各項目の内容をクライアント12の図示せぬ記憶領域に記録/更新する処理の途中で何らかの事故(ディスク書き込みエラーや処理負荷の増大による処理の中断等)により、PDI-Qの各項目の全ての内容が記録/更新されなかった場合に、PDI-Qの各項目の内容を記録/更新する直前の状態まで遡ってこの記録/更新処理を無とする(いわゆるロールバックする)か否かを示す値であり、”transactional”が”true”の場合、PDI-Qはロールバックされる。
【0073】
2行目乃至5行目は、論理値型の回答を求める質問を定義しており、3行目における<id>Common:111</id>は質問のid要素を、4行目における<q>Are you currently employed?</q>は質問自体を表している。
【0074】
6行目乃至9行目は、整数値型の回答を求める質問を定義しており、7行目における<id>Common:222</id>はその質問のid要素を、8行目における<q>What is the age of the oldest member of the household who watches television?</q>はその質問自体を表している。なお、6行目におけるminInclusive="10" maxInclusive="100"は、その質問に対する回答が、10以上100以下の整数値に制約されることを表している。
【0075】
10行目乃至17行目は、回答選択型の回答を求める質問を定義しており、11行目における<id>ProviderA:123</id>はその質問のid要素を、12行目における<q>In which of the following sports are you most interested? (Multiple selection allowed)</q>はその質問自体を表しており、13行目における<a>Baseball</a>、14行目における<a>Basketball</a>、15行目における<a>Soccer</a>、16行目における<a>Hockey</a>はそれぞれ、質問に対する回答の選択肢を表している。なお、10行目におけるminChoice="1" maxChoice="3"は、その質問に対する回答の数が、選択肢のうちの1以上3以下に制約されることを表している。
【0076】
18行目乃至24行目は、回答選択型の回答を求める質問を定義しており、19行目における<id>ProviderA:ProgramX:123</id>はその質問のid要素を、20行目における<q>Do you enjoy camping and outdoor recreation?(Only one selection)</q>はその質問自体を表しており、21行目における<a>Never</a>、22行目における<a>Occasionally</a>、23行目における<a>Frequently</a>はそれぞれ、質問に対する回答の選択肢を表している。なお、18行目におけるmaxChoice="1"は、その質問に対する回答の数が、1に制約されることを表している。
【0077】
このように、PDI-Qにおいては、質問の型によって、その質問に対する回答の候補や、回答に対する制約条件も定義される。
【0078】
25行目乃至28行目は、文字列型の回答を求める質問を定義しており、26行目における<id>ProviderA:321</id>はその質問のid要素を、27行目における<q>Who’s products are you most interested in recently?</q>はその質問自体を表している。
【0079】
ここで、以下においては、図7のPDI-Qで定義される質問それぞれを、それぞれのid要素の質問ということとする。具体的には、2行目乃至5行目で定義される質問を”Common:111”の質問といい、6行目乃至9行目で定義される質問を”Common:222”の質問といい、10行目乃至17行目で定義される質問を”ProviderA:123”の質問といい、18行目乃至24行目で定義される質問を”ProviderA:ProgramX:123”の質問といい、25行目乃至28行目で定義される質問を”ProviderA:321”の質問ということとする。
【0080】
このとき、”Common:111”の質問および”Common:222”の質問は、プロバイダ共通フィルタリングパラメータに区別され、”ProviderA:123”の質問、”ProviderA:ProgramX:123”の質問、および”ProviderA:321”の質問は、プロバイダ独自フィルタリングパラメータに区別される。例えば、”Common:111”の質問は、プロバイダ共通に設定された、識別子が”111”である質問であることを示しており、”ProviderA:ProgramX:123”の質問は、”ProviderA”であるプロバイダによって設定された、カテゴリ(プログラムID)が”ProgramX”であって、識別子が”123”である質問であることを示している。
【0081】
図5のフローチャートに戻り、ステップS12において、サーバ11のPDI-Qジェネレータ41は、生成したPDI-Qを、通信部42を介してクライアント12に送信するとともに、PDI-Aジェネレータ43に供給する。
【0082】
ステップS21において、クライアント12の通信部51は、サーバ11から送信されてくるPDI-Qを受信し、PDI-Aジェネレータ52に供給する。
【0083】
なお、PDI-Qは、例えば、サーバ11が設置されているプロバイダとしての放送局から所定の時間間隔で放送(送信)される毎に、クライアント12に受信される。また、PDI-Qは、クライアント12においてサーバ11が設置されている放送局にチャンネルが合わされたときに、クライアント12に受信されるようにしてもよい。
【0084】
ステップS22において、クライアント12のPDI-Aジェネレータ52は、通信部51において受信されたPDI-Qで定義されている質問に対するPDI-Aを生成する。具体的には、PDI-Aジェネレータ52は、サーバ11からのPDI-Qが受信されると、図示せぬ表示部に、PDI-Qで定義されている質問に対応する画面を表示させ、その質問に対する回答を、クライアント12のユーザ(視聴者)に入力または選択させることで、その回答を表すPDI-Aを生成する。すなわち、PDI-Aジェネレータ52は、ユーザと対話することによって、PDI-Qで定義されている質問に対する回答を表すPDI-Aを生成する。
【0085】
そして、ステップS23において、PDI-Aジェネレータ52は、生成したPDI-AをPDIストア53に格納する。
【0086】
[PDI-Aジェネレータによるユーザとの対話における画面表示例]
ここで、図8乃至図12を参照して、PDI-Aジェネレータ52によるユーザとの対話における画面表示例について説明する。なお、ここでは、クライアント12は、図7を参照して説明したPDI-Qを受信したものとし、クライアント12の図示せぬ表示部には、受信したPDI-Qで定義されている質問群に対応する画面が、順次表示されるものとする。
【0087】
図8は、図7を参照して説明したPDI-Qで定義されている質問のうちの、”Common:111”の質問に対応する画面表示例を示している。図8においては、質問提示部61に、図7の4行目に示されている質問「Are you currently employed?」が表示されている。また、ユーザに対して、質問に対する回答の入力を促すメッセージ「いずれか選択してくだざい。」と、質問に対する回答として「Yes」をユーザに選択させるための選択ボタン62−1、および、質問に対する回答として「No」をユーザに選択させるための選択ボタン62−2が表示されている。
【0088】
図9は、図7を参照して説明したPDI-Qで定義されている質問のうちの、”Common:222”の質問に対応する画面表示例を示している。図9においては、質問提示部71に、図7の8行目に示されている質問「What is the age of the oldest member of the household who watches television?」が表示されている。また、ユーザに対して、質問に対する回答の入力を促すメッセージ「年齢を入力してくだざい。」と、質問に対する回答として整数値をユーザに入力させるための回答入力部72が表示されている。
【0089】
図10は、図7を参照して説明したPDI-Qで定義されている質問のうちの、”ProviderA:123”の質問に対応する画面表示例を示している。図10においては、質問提示部81に、図7の12行目に示されている質問「In which of the following sports are you most interested? (Multiple selection allowed)」が表示されている。また、ユーザに対して、質問に対する回答の入力を促すメッセージ「次の中から1つ以上3つ以下で選択してください。」と、質問に対する回答としての選択肢「Baseball」、「Basketball」、「Soccer」、および「Hockey」をユーザに選択させるための選択ボタン82−1乃至82−4が表示されている。
【0090】
図11は、図7を参照して説明したPDI-Qで定義されている質問のうちの、”ProviderA:ProgramX:123”の質問に対応する画面表示例を示している。図11においては、質問提示部91に、図7の20行目に示されている質問「Do you enjoy camping and outdoor recreation?(Only one selection)」が表示されている。また、ユーザに対して、質問に対する回答の入力を促すメッセージ「次の中から1つだけ選択してください。」と、質問に対する回答としての選択肢「Never」、「Occasionally」、および「Frequently」をユーザに選択させるための選択ボタン92−1乃至92−3が表示されている。
【0091】
図12は、図7を参照して説明したPDI-Qで定義されている質問のうちの、”ProviderA:321”の質問に対応する画面表示例を示している。図12においては、質問提示部101に、図7の27行目に示されている質問「Who’s products are you most interested in recently?」が表示されている。また、ユーザに対して、質問に対する回答の入力を促すメッセージ「自由に記述してくだざい。」と、質問に対する回答として文字列をユーザに入力させるための回答入力部102が表示されている。
【0092】
このようにして、PDI-Aジェネレータ52は、図8乃至図12で説明した画面表示により、ユーザに、PDI-Qで定義されている質問に対する回答を入力または選択させることで、PDI-Qに対応するPDI-Aを生成する。
【0093】
なお、図8乃至図12で説明した画面表示は、PDI-Qを受信して間もなく後に表示されるようにしてもよいし、PDI-Qの受信後、図示せぬ記憶部にPDI-Qを保持するようにし、ユーザにより設定画面の表示が指示されたとき等に表示されるようにしてもよい。
【0094】
[PDI-Aの例]
ここで、図13を参照して、PDI-Aジェネレータ52によって生成されるPDI-Aの例について説明する。図13で示されるPDI-Aは、図8乃至図12で示した画面表示に対する、ユーザによる回答の選択または入力に基づいて生成されたPDI-Aである。
【0095】
すなわち、2行目乃至5行目は、図8で説明した画面表示により提示された質問に対するユーザの回答を示している。すなわち、3行目における<id>Common:111</id>は、図8の画面表示により提示された質問のid要素を示しており、4行目における<a>true</a>は質問に対する回答として、図8の画面表示において選択ボタン62−1(「Yes」の回答)がユーザに選択されたことを示している。
【0096】
6行目乃至9行目は、図9で説明した画面表示により提示された質問に対するユーザの回答を示している。すなわち、7行目における<id>Common:222</id>は、図9の画面表示により提示された質問のid要素を示しており、8行目における<a>34</a>は質問に対する回答として、図9の画面表示において回答入力部72に整数値として「34」がユーザにより入力されたことを示している。
【0097】
10行目乃至15行目は、図10で説明した画面表示により提示された質問に対するユーザの回答を示している。すなわち、11行目における<id>ProviderA:123</id>は、図10の画面表示により提示された質問のid要素を示しており、12行目における<a>Baseball</a>、13行目における<a>Soccer</a>、14行目における<a>Hockey</a>は質問に対する回答として、図10の画面表示において選択ボタン82−1,82−3,82−4がユーザにより選択されたことを示している。
【0098】
16行目乃至19行目は、図11で説明した画面表示により提示された質問に対するユーザの回答を示している。すなわち、17行目における<id>ProviderA:ProgramX:123</id>は、図11の画面表示により提示された質問のid要素を示しており、18行目における<a>Occasionally</a>は質問に対する回答として、図11の画面表示において選択ボタン92−2がユーザにより選択されたことを示している。
【0099】
20行目乃至23行目は、図12で説明した画面表示により提示された質問に対するユーザの回答を示している。すなわち、21行目における<id>ProviderA:321</id>は、図12の画面表示により提示された質問のid要素を示しており、22行目における<a>Somy</a>は質問に対する回答として、図12の画面表示において回答入力部102に文字列として「Somy」がユーザにより入力されたことを示している。
【0100】
PDI-Aジェネレータ52は、このようにして生成したPDI-AをPDIストア53に供給し、記憶させる。PDIストア53に記憶されたPDI-Aは、後述するように、サーバ11から配信されるコンテンツが、クライアント12のユーザの嗜好に合っているか否かを判定する際に用いられる。
【0101】
さて、図5のフローチャートに戻り、ステップS13において、サーバ11のPDI-Aジェネレータ43は、PDI-Qジェネレータ41からのPDI-Qで定義されている質問に対するPDI-Aを生成し、メタデータディストリビュータ44に供給する。具体的には、PDI-Aジェネレータ43は、放送局(プロバイダ側)のスタッフの操作によってPDI-Qが生成されると、図示せぬ表示部に、例えば図8乃至図12を参照して説明したような、PDI-Qで定義されている質問に対応する画面を表示させ、その質問に対する回答を、放送局のスタッフに入力または選択させることで、その回答を表すPDI-Aを生成する。このとき、放送局のスタッフは、PDI-Qで定義されている質問に対する回答として、配信しようとするコンテンツに対応する回答を入力または選択する。すなわち、PDI-Aジェネレータ43によって生成されるPDI-Aは、プロバイダ側がクライアント12のユーザ(視聴者)の嗜好を考慮に入れ、その視聴者に、のちに配信されるコンテンツを視聴させるための情報(回答)を表している。
【0102】
ステップS14において、メタデータディストリビュータ44は、PDI-Aジェネレータ43からのPDI-Aに基づいて、コンテンツ蓄積部45に蓄積されているコンテンツの中から、PDI-Aに対応するコンテンツを特定(照会)する。ここで特定されるコンテンツは、PDI-Aジェネレータ43からのPDI-Aと、蓄積されているコンテンツに予め付与されているコンテンツメタデータとの類似度が所定値より高いものとしてもよいし、放送局のスタッフによって、ユーザに視聴させたいコンテンツとして予め選択されたものであってもよい。なお、メタデータディストリビュータ44によって特定されたコンテンツは、コンテンツディストリビュータ46によって、コンテンツ蓄積部45から取得される。
【0103】
ステップS15において、メタデータディストリビュータ44は、ステップS14において特定したコンテンツに予め付与されているコンテンツメタデータと、PDI-Aジェネレータ43からのPDI-Aとに基づいて、PDI-Aを含むコンテンツメタデータを新たに生成する。
【0104】
ステップS16において、通信部42は、クライアント12からの要求に応じて、メタデータディストリビュータ44によって生成されたコンテンツメタデータを配信する。このとき、コンテンツメタデータとしては、メタデータディストリビュータ44によって生成されたコンテンツメタデータ以外に、標準化団体によって規定されたコンテンツメタデータが送信されてもよい。
【0105】
また、ステップS17において、通信部42は、クライアント12からの要求に応じて、コンテンツディストリビュータ46に取得されたコンテンツを配信する。
【0106】
一方、ステップS23において、クライアント12のコンテンツフィルタ54は、マッチング処理を実行し、PDIストア53に記憶されているPDI-Aと、サーバ11からのコンテンツメタデータに含まれるPDI-Aとのマッチングを行うことで、サーバ11からのコンテンツを取得する。なお、以下においては、PDIストア53に記憶されているPDI-Aと、サーバ11からのコンテンツメタデータに含まれるPDI-Aとを区別するために、前者をユーザ側PDI-A、後者をプロバイダ側PDI-Aということとする。
【0107】
[コンテンツフィルタにおけるマッチング処理の例]
ここで、ユーザ側PDI-Aとして、図13を参照して説明したPDI-Aが生成され記憶されているものとし、プロバイダ側PDI-Aとして、図14に示されるPDI-Aがサーバ11から送信されてきたものとする。
【0108】
図14に示されるプロバイダ側PDI-Aは、図13で示されたユーザ側PDI-Aと基本的な構成は同一であるので詳細な説明は省略するが、このプロバイダ側PDI-Aは、”Common:111”の質問に対する回答として「false」が選択され、”ProviderA:123”の質問に対する回答として「Baseball」が選択され、”ProviderA:ProgramX:123”の質問に対する回答として「Never」が選択されたことを示している。
【0109】
このとき、コンテンツフィルタ54は、ユーザ側PDI-Aとプロバイダ側PDI-Aとを比較し、質問に対する回答が1つでも一致している場合、ユーザ側PDI-Aとプロバイダ側PDI-Aとはマッチしていると判定し、質問に対する回答が1つも一致しない場合、ユーザ側PDI-Aとプロバイダ側PDI-Aとはマッチしていないと判定する。この場合、図13に示されるユーザ側PDI-Aにおける”ProviderA:123”の質問に対する回答と、図14に示されるプロバイダ側PDI-Aにおける”ProviderA:123”の質問に対する回答のそれぞれに「Baseball」が含まれている点でそれぞれ一致しているので、ユーザ側PDI-Aとプロバイダ側PDI-Aとはマッチしていると判定される。
【0110】
次に、プロバイダ側PDI-Aとして、図15に示されるPDI-Aがサーバ11から送信されてきたものとする。
【0111】
図15に示されるプロバイダ側PDI-Aは、”ProviderA:123”の質問に対する回答として「Basketball」が選択され、”ProviderA:ProgramX:123”の質問に対する回答として「Never」が選択されたことを示している。
【0112】
この場合、図13に示されるユーザ側PDI-Aにおける質問に対する回答と、図15に示されるプロバイダ側PDI-Aにおける質問に対する回答が1つも一致しないので、ユーザ側PDI-Aとプロバイダ側PDI-Aとはマッチしていないと判定される。
【0113】
ところで、上述したように、コンテンツフィルタ54は、ウェブアプリケーションとして提供され、複数のAPIを呼び出すことでマッチング処理を行う。
【0114】
[マッチング処理の詳細]
ここで、図16のフローチャートを参照して、ステップS24において、コンテンツフィルタ54により複数のAPIが呼び出されることによって実行されるマッチング処理の詳細について説明する。
【0115】
まず、ステップS51において、コンテンツフィルタ54は、PDIストア53からユーザ側PDI-Aを取得するためのAPIであるユーザ側PDI-A取得APIを呼び出す。
【0116】
ユーザ側PDI-A取得APIの入力引数および出力引数を以下に示す。
入力引数:型が”QXA”である質問のid要素(QXA/@id)
出力引数:入力引数で指定された型”QXA”の質問に対するユーザ側PDI-Aが格納されたPDI Table
【0117】
なお、”QXA”は、上述で説明した、質問の型を表す名称”QIA”,”QBA”,”QSA”,”QTA”,”QAA”のいずれかまたは全部を示す。例えば、QXA/@id=*として入力引数がセットされた場合、全ての質問の型が指定されることとする。また、出力引数として返されるPDI Tableは、例えば、図13を参照して説明したユーザ側PDI-Aが格納されるテーブルを示す。したがって、QXA/@id=*として入力引数がセットされた場合、PDIストア53に格納されている全てのユーザ側PDI-Aが出力引数として返される。
【0118】
ステップS52において、コンテンツフィルタ54は、ユーザ側PDI-A取得APIの出力引数として返されるユーザ側PDI-Aを取得する。
【0119】
ステップS53において、コンテンツフィルタ54は、サーバ11からプロバイダ側PDI-Aを取得するためのAPIであるプロバイダ側PDI-A取得APIを呼び出す。
【0120】
プロバイダ側PDI-A取得APIの入力引数および出力引数を以下に示す。
入力引数:コンテンツID(C_ID)
出力引数:入力引数で指定されたコンテンツIDに対応するコンテンツメタデータに含まれるプロバイダ側PDI-A
【0121】
なお、コンテンツIDは、コンテンツを特定するための情報であり、そのコンテンツのコンテンツメタデータにも対応付けられている。例えば、C_ID=*として入力引数がセットされた場合、全てのコンテンツが指定されることとする。したがって、C_ID=*として入力引数がセットされた場合、全てのコンテンツのコンテンツメタデータの配信がサーバ11に要求され、その要求に応じてサーバ11から配信されてきたコンテンツメタデータに含まれるプロバイダ側PDI-Aが出力引数として返される。
【0122】
ステップS54において、コンテンツフィルタ54は、プロバイダ側PDI-A取得APIの出力引数として返されるプロバイダ側PDI-Aを取得する。
【0123】
ステップS55において、コンテンツフィルタ54は、図13乃至図15を参照して説明した手法により、ユーザ側PDI-Aとプロバイダ側PDI-Aとのマッチングを行う。
【0124】
ステップS56において、コンテンツフィルタ54は、ユーザ側PDI-Aとマッチしたプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDを同定する。
【0125】
ステップS57において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0126】
コンテンツ取得APIの入力引数および出力引数を以下に示す。
入力引数:コンテンツID(C_ID)
出力引数:入力引数で指定されたコンテンツIDで特定されるコンテンツおよびそのコンテンツへの参照
【0127】
上述と同様、コンテンツIDは、コンテンツを特定するための情報であり、コンテンツフィルタ54により同定された、ユーザ側PDI-Aとマッチしたプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDとされる。すなわち、ユーザ側PDI-Aとマッチしたプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDで特定されるコンテンツの配信がサーバ11に要求され、その要求に応じてサーバ11から配信されてきたコンテンツおよびそのコンテンツへの参照が出力引数として返される。
【0128】
ステップS58において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得し、コンテンツ再生部55またはコンテンツ蓄積部56に供給して、処理は図5のフローチャートのステップS24に戻る。
【0129】
すなわち、サーバ11から配信されたコンテンツが、コンテンツフィルタ54からコンテンツ再生部55に供給された場合、ステップS25において、コンテンツ再生部55は、コンテンツを再生する。また、サーバ11から配信されたコンテンツが、コンテンツフィルタ54からコンテンツ蓄積部56に供給された場合、ステップS25において、コンテンツ蓄積部56は、コンテンツを蓄積(記録)する。蓄積されたコンテンツは、ユーザの操作指示に応じて、適宜、コンテンツ再生部55に供給され再生される。
【0130】
以上の処理によれば、放送システムにおいて、プロバイダ側では、サーバによって、ユーザの嗜好についての質問を表すPDI-Qが生成され、そのPDI-Qがクライアント端末に送信され、そのPDI-Qに対して、プロバイダ側が設定した回答を表すプロバイダ側PDI-Aが、対応するコンテンツのコンテンツメタデータとして配信される。これにより、コンテンツメタデータとして、標準化団体によって規定されたコンテンツメタデータ以外の、その時のニーズに応じたコンテンツメタデータをコンテンツに付与することができるようになる。一方、ユーザ側では、クライアント端末によって、サーバからのPDI-Qに対するユーザの回答を表すユーザ側PDI-Aが生成され、生成したユーザ側PDI-Aと、サーバからのプロバイダ側PDI-Aとのマッチングが行われることで、サーバから配信されたコンテンツを取得するか否かが決定される。これにより、標準化団体によって規定されたコンテンツメタデータ以外の、その時のニーズに応じたコンテンツメタデータによって、コンテンツをフィルタリングすることができるようになる。したがって、その時のニーズに応じたコンテンツを取得することが可能となる。
【0131】
なお、以上においては、クライアント12は、サーバ11からのコンテンツの配信時に、リアルタイムにPDI-Aのマッチングを行うようにしたが、予め、サーバ11からの全てのコンテンツを蓄積するようにし、処理のバックグラウンドにおいてPDI-Aのマッチングを行い、蓄積したコンテンツのうちの、マッチしたPDI-A(プロバイダ側PDI-A)に対応するコンテンツを再生したり、マッチしないPDI-Aに対応するコンテンツを削除したりするようにしてもよい。
【0132】
また、以上においては、PDIストア53に格納されているユーザ側PDI-Aは、ファイルシステムによりアクセスされるものとしたが、PDIストア53をデータベースとして構成するようにした場合には、PDIストア53に格納されているユーザ側PDI-Aは、データベース管理システム(Database Management System:DBMS)により管理されるようになる。
【0133】
[マッチング処理の詳細]
ここで、図17のフローチャートを参照して、PDIストア53がデータベースとして構成される場合のマッチング処理の詳細について説明する。
【0134】
まず、ステップS71において、コンテンツフィルタ54は、サーバ11からプロバイダ側PDI-Aを取得するためのAPIであるプロバイダ側PDI-A取得APIを呼び出す。
【0135】
ステップS72において、コンテンツフィルタ54は、プロバイダ側PDI-A取得APIの出力引数として返されるプロバイダ側PDI-Aを取得する。
【0136】
ステップS73において、コンテンツフィルタ54は、PDIストア53に、サーバ11からのプロバイダ側PDI-Aに対応するユーザ側PDI-Aが格納されているか否かを評価するためのAPIであるユーザ側PDI-A評価APIを呼び出す。
【0137】
ユーザ側PDI-A評価APIの入力引数および出力引数を以下に示す。
入力引数:プロバイダ側PDI-A
出力引数:入力引数で指定されたプロバイダ側PDI-Aに対応するユーザ側PDI-Aが格納されているか否かの評価結果(真/偽(true/false))
【0138】
なお、プロバイダ側PDI-Aは、プロバイダ側PDI-A取得APIにより取得されたプロバイダ側PDI-Aである。ユーザ側PDI-A評価APIにより、プロバイダ側PDI-AがPDIストア53のデータを管理するDBMSに渡されると、DBMSは、そのプロバイダ側PDI-Aに対応するユーザ側PDI-Aを検索する。その検索結果に基づいて、プロバイダ側PDI-Aに対応するユーザ側PDI-Aが格納されているか否かの評価結果が出力引数として返される。
【0139】
ステップS74において、コンテンツフィルタ54は、ユーザ側PDI-A評価APIの出力引数として返されるユーザ側PDI-Aの評価結果を取得する。
【0140】
ステップS75において、コンテンツフィルタ54は、ユーザ側PDI-Aの評価結果が真(true)となったプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDを同定する。
【0141】
ステップS76において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0142】
ステップS77において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得する。
【0143】
このように、PDIストア53がデータベースとして構成される場合には、コンテンツフィルタ54は、ユーザ側PDI-A評価APIを呼び出すことで、ユーザ側PDI-Aとプロバイダ側PDI-Aとのマッチングを行うことができる。
【0144】
また、以上においては、コンテンツフィルタ54は、インスタンスとして表現されたユーザ側PDI-Aとプロバイダ側PDI-Aとを比較し、質問に対する回答が1つでも一致しているか否かによって、ユーザ側PDI-Aとプロバイダ側PDI-Aとのマッチングを行うようにしたが、ユーザ側PDI-Aまたはプロバイダ側PDI-Aのいずれか一方を、PDI-Aを評価するクエリとして表現することで、ユーザ側PDI-Aとプロバイダ側PDI-Aとを比較するようにしてもよい。
【0145】
ここで、以下においては、ユーザ側PDI-Aまたはプロバイダ側PDI-Aのいずれか一方を、クエリとして表現することで、ユーザ側PDI-Aとプロバイダ側PDI-Aとを比較する構成について説明する。
【0146】
[PDI-Aを評価するクエリによるマッチング処理の例1]
まずは、プロバイダ側PDI-Aをクエリとして表現することで、ユーザ側PDI-Aとプロバイダ側PDI-Aとを比較する構成について説明する。
【0147】
図18は、プロバイダ側PDI-Aをクエリとして表現するようにしたサーバ11の機能構成例を示している。
【0148】
図18のサーバ11は、PDI-Qジェネレータ41、通信部42、コンテンツ蓄積部45、コンテンツディストリビュータ46、PDI-FCジェネレータ111、およびメタデータディストリビュータ112から構成される。
【0149】
なお、図18のサーバ11においては、図3のサーバ11に設けられたものと同様の機能を備える構成については、同一名称および同一符号を付するものとし、その説明は、適宜省略するものとする。
【0150】
すなわち、図18のサーバ11において、図3のサーバ11と異なるのは、PDI-Aジェネレータ43およびメタデータディストリビュータ44に代えて、PDI-FCジェネレータ111およびメタデータディストリビュータ112を設けた点である。
【0151】
PDI-FCジェネレータ111は、PDI-Qジェネレータ41からのPDI-Qに基づいて、PDI-Qに対応するPDI-A(プロバイダ側PDI-A)を生成し、生成したプロバイダ側PDI-Aを所定の条件文に当てはめたPDI-FC(Preference Demographic and Interest Filtering Criteria)を生成して、メタデータディストリビュータ112に供給する。
【0152】
メタデータディストリビュータ112は、PDI-FCジェネレータ111からのPDI-FCに基づいて、コンテンツ蓄積部45に蓄積されているコンテンツの中から、PDI-FCに対応するコンテンツを特定(照会)する。メタデータディストリビュータ112は、特定したコンテンツのコンテンツメタデータとして、PDI-FCを含むコンテンツメタデータを生成し、通信部42を介してクライアント12に送信する。
【0153】
また、この例におけるクライアント12は、図4のコンテンツフィルタ54が、PDIストア53からユーザ側PDI-Aを読み出し、そのユーザ側PDI-Aと、サーバ11から送信されてきたコンテンツメタデータに含まれているPDI-FCとに基づいて、コンテンツをフィルタリングする以外は、図4のクライアント12と同一であるので、その説明は、省略するものとする。
【0154】
次に、図19のフローチャートを参照して、図18のサーバ11を備える放送システム10におけるコンテンツの送受信処理について説明する。
【0155】
なお、図19のフローチャートのステップS111,S112,S116,S117,S121乃至S123,S125の処理は、図5のフローチャートのステップS11,S12,S16,S17,S21乃至S23,S25の処理と基本的に同様であるので、その説明は省略する。
【0156】
すなわち、ステップS113において、サーバ11のPDI-FCジェネレータ111は、PDI-Qジェネレータ41からのPDI-Qで定義されている質問に対するプロバイダ側PDI-Aを生成し、生成したプロバイダ側PDI-Aを所定の条件文に当てはめたPDI-FCを生成して、メタデータディストリビュータ112に供給する。具体的には、例えば、PDI-FCジェネレータ111は、放送局(プロバイダ側)のスタッフの操作によってPDI-Qが生成されると、図示せぬ表示部に、例えば図8乃至図12を参照して説明したような、PDI-Qで定義されている質問に対応する画面を表示させ、その質問に対する回答を、放送局のスタッフに入力または選択させ、さらに、それぞれの回答の組み合わせ(フィルタリング条件)をそのスタッフに決定させることで、その回答の組み合わせを表すPDI-FCを生成する。このとき、放送局のスタッフは、PDI-Qで定義されている質問に対する回答として、配信しようとするコンテンツに対応する回答を入力または選択し、さらにその組み合わせを決定する。すなわち、PDI-FCジェネレータ111によって生成されるPDI-FCは、プロバイダ側がクライアント12のユーザ(視聴者)の嗜好を考慮に入れ、その視聴者に、のちに配信されるコンテンツを視聴させるための情報(回答の組み合わせ)を表している。
【0157】
ステップS114において、メタデータディストリビュータ112は、PDI-FCジェネレータ111からのPDI-FCに基づいて、コンテンツ蓄積部45に蓄積されているコンテンツの中から、PDI-FCに対応するコンテンツを特定(照会)する。ここで特定されるコンテンツは、PDI-FCジェネレータ111からのPDI-FCと、蓄積されているコンテンツに予め付与されているコンテンツメタデータとの類似度が所定値より高いものとしてもよいし、放送局のスタッフによって、ユーザに視聴させたいコンテンツとして予め選択されたものであってもよい。なお、メタデータディストリビュータ112によって特定されたコンテンツは、コンテンツディストリビュータ46によって、コンテンツ蓄積部45から取得される。
【0158】
ステップS115において、メタデータディストリビュータ112は、ステップS114において特定したコンテンツに予め付与されているコンテンツメタデータと、PDI-FCジェネレータ111からのPDI-FCとに基づいて、PDI-FCを含むコンテンツメタデータを新たに生成する。
【0159】
そして、ステップS124において、クライアント12のコンテンツフィルタ54は、マッチング処理を実行し、サーバ11からのコンテンツメタデータに含まれるPDI-FCに基づいて、PDIストア53に記憶されているPDI-Aのマッチングを行うことで、サーバ11からのコンテンツを取得する。
【0160】
ここで、ユーザ側PDI-Aとして、図13を参照して説明したPDI-Aが生成され記憶されているものとし、以下に示されるPDI-FCがサーバ11から送信されてきたものとする。
“//QBA[id='Common:111' and a='true'] and //QSA[id='ProviderA:123' and a='Baseball']”
【0161】
上述のPDI-FCは、ユーザ側PDI-Aが、”Common:111”の質問に対する回答として「true」が選択され、かつ、”ProviderA:123”の質問に対する回答として「Baseball」が選択されているか否かを評価することを示している。
【0162】
このとき、コンテンツフィルタ54は、PDI-FCに基づいてユーザ側PDI-Aを評価し、PDI-FCが満たされる(真となる)ユーザ側PDI-Aである場合、ユーザ側PDI-AとPDI-FCとはマッチしていると判定し、PDI-FCが満たされない(偽となる)ユーザ側PDI-Aである場合、ユーザ側PDI-AとPDI-FCとはマッチしていないと判定する。この場合、図13に示されるユーザ側PDI-Aにおいては、”Common:111”の質問に対する回答として「true」が選択され、かつ、”ProviderA:123”の質問に対する回答として「Baseball」が選択されているので、ユーザ側PDI-AとPDI-FCとはマッチしていると判定される。
【0163】
[マッチング処理の詳細]
ここで、図20のフローチャートを参照して、ステップS124において実行されるマッチング処理の詳細について説明する。
【0164】
まず、ステップS151において、コンテンツフィルタ54は、PDIストア53からユーザ側PDI-Aを取得するためのAPIであるユーザ側PDI-A取得APIを呼び出す。
【0165】
ステップS152において、コンテンツフィルタ54は、ユーザ側PDI-A取得APIの出力引数として返されるユーザ側PDI-Aを取得する。
【0166】
ステップS153において、コンテンツフィルタ54は、サーバ11からPDI-FCを取得するためのAPIであるPDI-FC取得APIを呼び出す。
【0167】
PDI-FC取得APIの入力引数および出力引数を以下に示す。
入力引数:コンテンツID(C_ID)
出力引数:入力引数で指定されたコンテンツIDに対応するコンテンツメタデータに含まれるPDI-FC
【0168】
コンテンツIDは、コンテンツを特定するための情報であり、そのコンテンツのコンテンツメタデータにも対応付けられている。例えば、C_ID=*として入力引数がセットされた場合、全てのコンテンツが指定されることとする。したがって、C_ID=*として入力引数がセットされた場合、全てのコンテンツのコンテンツメタデータの配信がサーバ11に要求され、その要求に応じてサーバ11から配信されてきたコンテンツメタデータに含まれるPDI-FCが出力引数として返される。
【0169】
ステップS154において、コンテンツフィルタ54は、PDI-FC取得APIの出力引数として返されるPDI-FCを取得する。
【0170】
ステップS155において、コンテンツフィルタ54は、上述した手法により、ユーザ側PDI-AとPDI-FCとのマッチングを行う。
【0171】
ステップS156において、コンテンツフィルタ54は、ユーザ側PDI-AとマッチしたPDI-FCを含むコンテンツメタデータのコンテンツIDを同定する。
【0172】
ステップS157において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0173】
ステップS158において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得し、コンテンツ再生部55またはコンテンツ蓄積部56に供給して、処理は図19のフローチャートのステップS124に戻る。
【0174】
以上においては、PDIストア53に格納されているユーザ側PDI-Aは、ファイルシステムによりアクセスされるものとしたが、PDIストア53をデータベースとして構成するようにした場合には、PDIストア53に格納されているユーザ側PDI-Aは、データベース管理システム(DBMS)により管理されるようになる。
【0175】
[マッチング処理の詳細]
ここで、図21のフローチャートを参照して、PDIストア53がデータベースとして構成される場合のマッチング処理の詳細について説明する。
【0176】
まず、ステップS171において、コンテンツフィルタ54は、サーバ11からPDI-FCを取得するためのAPIであるPDI-FC取得APIを呼び出す。
【0177】
ステップS172において、コンテンツフィルタ54は、PDI-FC取得APIの出力引数として返されるPDI-FCを取得する。
【0178】
ステップS173において、コンテンツフィルタ54は、PDIストア53に、サーバ11からのPDI-FCに対応するユーザ側PDI-Aが格納されているか否かを評価するためのAPIであるユーザ側PDI-A評価APIを呼び出す。
【0179】
ユーザ側PDI-A評価APIの入力引数および出力引数を以下に示す。
入力引数:PDI-FC
出力引数:入力引数で指定されたPDI-FCによる評価結果(真/偽(true/false))
【0180】
PDI-FCは、PDI-FC取得APIにより取得されたPDI-FCである。ユーザ側PDI-A評価APIにより、PDI-FCがPDIストア53のデータを管理するDBMSに渡されると、DBMSは、PDI-FCを用いてユーザ側PDI-Aを評価し、その評価結果が出力引数として返される。
【0181】
ステップS174において、コンテンツフィルタ54は、ユーザ側PDI-A評価APIの出力引数として返されるユーザ側PDI-Aの評価結果を取得する。
【0182】
ステップS175において、コンテンツフィルタ54は、ユーザ側PDI-Aの評価結果が真(true)となったプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDを同定する。
【0183】
ステップS176において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0184】
ステップS177において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得する。
【0185】
このように、PDIストア53がデータベースとして構成される場合には、コンテンツフィルタ54は、ユーザ側PDI-A評価APIを呼び出すことで、ユーザ側PDI-AとPDI-FCとのマッチングを行うことができる。
【0186】
以上のようにして、プロバイダ側で設定されたPDI-FCによって、より複雑なフィルタリングの条件が表現されるようになるので、より確実に、プロバイダ側が期待するユーザ(視聴者)にコンテンツを取得させることが可能となる。
【0187】
[PDI-Aを評価するクエリによるマッチング処理の例2]
次に、ユーザ側PDI-Aをクエリとして表現することで、ユーザ側PDI-Aとプロバイダ側PDI-Aとを比較する構成について説明する。
【0188】
図22は、ユーザ側PDI-Aをクエリとして表現するようにしたクライアント12の機能構成例を示している。
【0189】
図22のクライアント12は、通信部51、コンテンツフィルタ54、コンテンツ再生部55、コンテンツ蓄積部56、PDI-FCジェネレータ131、およびPDIストア132から構成される。
【0190】
なお、図22のクライアント12においては、図4のクライアント12に設けられたものと同様の機能を備える構成については、同一名称および同一符号を付するものとし、その説明は、適宜省略するものとする。
【0191】
すなわち、図22のクライアント12において、図4のクライアント12と異なるのは、PDI-Aジェネレータ52およびPDIストア53に代えて、PDI-FCジェネレータ131およびPDIストア132を設けた点である。
【0192】
PDI-FCジェネレータ131は、サーバ11から送信されてきたPDI-Qに基づいて、PDI-Qに対応する、クライアント12のユーザの嗜好についての質問に対するユーザの回答を表すユーザ側PDI-Aを生成し、生成したユーザ側PDI-Aを所定の条件文に当てはめたPDI-FCを生成して、PDIストア132に供給する。
【0193】
PDIストア132は、PDI-FCジェネレータ131からのPDI-FCを記憶する。PDIストア132に記憶されているPDI-FCは、ファイルシステムによりアクセスされ、必要に応じて、コンテンツフィルタ54に読み出される。
【0194】
なお、図22のコンテンツフィルタ54は、PDIストア53からPDI-FCを読み出し、そのPDI-FCと、サーバ11から送信されてきたコンテンツメタデータに含まれるプロバイダ側PDI-Aとに基づいて、コンテンツをフィルタリングする。
【0195】
また、この例におけるサーバ11は、図3のサーバ11と同一であるので、その説明は省略するものとする。
【0196】
次に、図23のフローチャートを参照して、図22のクライアント12を備える放送システム10におけるコンテンツの送受信処理について説明する。
【0197】
なお、図23のフローチャートのステップS211乃至S221,S225の処理は、図5のフローチャートのステップS11乃至S21,S25の処理と基本的に同様であるので、その説明は省略する。
【0198】
すなわち、ステップS222において、クライアント12のPDI-FCジェネレータ131は、通信部51において受信されたPDI-Qで定義されている質問に対するユーザ側PDI-Aを生成し、生成したユーザ側PDI-Aを所定の条件文に当てはめたPDI-FCを生成する。具体的には、例えば、PDI-FCジェネレータ131は、放送局からのPDI-Qが受信されると、図示せぬ表示部に、図8乃至図12を参照して説明したような、PDI-Qで定義されている質問に対応する画面を表示させ、その質問に対する回答を、クライアント12のユーザ(視聴者)に入力または選択させ、さらに、それぞれの回答の組み合わせ(フィルタリング条件)をそのユーザに決定させることで、その回答の組み合わせを表すPDI-FCを生成する。すなわち、PDI-FCジェネレータ131は、ユーザと対話することによって、PDI-Qで定義されている質問に対する回答の組み合わせを表すPDI-FCを生成する。
【0199】
ステップS223において、PDI-FCジェネレータ131は、生成したPDI-FCをPDIストア132に格納する。
【0200】
そして、ステップS224において、コンテンツフィルタ54は、マッチング処理を実行し、PDIストア132に記憶されているPDI-FCに基づいて、サーバ11からのコンテンツメタデータに含まれるプロバイダ側PDI-Aのマッチングを行うことで、サーバ11からのコンテンツを取得する。
【0201】
ここで、プロバイダ側PDI-Aとして、図14を参照して説明したPDI-Aがサーバ11から送信されてきたものとし、以下に示されるPDI-FCが生成され記憶されているものとする。
“//QBA[id='Common:111' and a='false'] and //QSA[id='ProviderA:123' and a='Baseball']”
【0202】
上述のPDI-FCは、プロバイダ側PDI-Aが、”Common:111”の質問に対する回答として「false」が選択され、かつ、”ProviderA:123”の質問に対する回答として「Baseball」が選択されているか否かを評価することを示している。
【0203】
このとき、コンテンツフィルタ54は、PDI-FCに基づいてプロバイダ側PDI-Aを評価し、PDI-FCが満たされる(真となる)プロバイダ側PDI-Aである場合、プロバイダ側PDI-AとPDI-FCとはマッチしていると判定し、PDI-FCが満たされない(偽となる)プロバイダ側PDI-Aである場合、プロバイダ側PDI-AとPDI-FCとはマッチしていないと判定する。この場合、図14に示されるプロバイダ側PDI-Aにおいては、”Common:111”の質問に対する回答として「false」が選択され、かつ、”ProviderA:123”の質問に対する回答として「Baseball」が選択されているので、プロバイダ側PDI-AとPDI-FCとはマッチしていると判定される。
【0204】
[マッチング処理の詳細]
ここで、図24のフローチャートを参照して、ステップS224において実行されるマッチング処理の詳細について説明する。
【0205】
まず、ステップS251において、コンテンツフィルタ54は、PDIストア53からPDI-FCを取得するためのAPIであるPDI-FC取得APIを呼び出す。
【0206】
PDI-FC取得APIの入力引数および出力引数を以下に示す。
入力引数:無し
出力引数:PDIストア132に記憶されているPDI-FC
【0207】
すなわち、PDI-FC取得APIが呼び出されると、PDIストア132に格納されている全てのPDI-FCが出力引数として返される。
【0208】
ステップS252において、コンテンツフィルタ54は、PDI-FC取得APIの出力引数として返されるPDI-FCを取得する。
【0209】
ステップS253において、コンテンツフィルタ54は、サーバ11からプロバイダ側PDI-Aを取得するためのAPIであるプロバイダ側PDI-A取得APIを呼び出す。
【0210】
ステップS254において、コンテンツフィルタ54は、プロバイダ側PDI-A取得APIの出力引数として返されるプロバイダ側PDI-Aを取得する。
【0211】
ステップS255において、コンテンツフィルタ54は、上述した手法により、PDI-FCとプロバイダ側PDI-Aとのマッチングを行う。
【0212】
ステップS256において、コンテンツフィルタ54は、PDI-FCとマッチしたプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDを同定する。
【0213】
ステップS257において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0214】
ステップS258において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得し、コンテンツ再生部55またはコンテンツ蓄積部56に供給して、処理は、図23のフローチャートのステップS224に戻る。
【0215】
以上においては、PDIストア132に格納されているPDI-FCは、ファイルシステムによりアクセスされるものとしたが、PDIストア132をデータベースとして構成するようにした場合には、PDIストア132に格納されているPDI-FCは、データベース管理システム(DBMS)により管理されるようになる。
【0216】
[マッチング処理の詳細]
ここで、図25のフローチャートを参照して、PDIストア132がデータベースとして構成される場合のマッチング処理の詳細について説明する。
【0217】
まず、ステップS271において、コンテンツフィルタ54は、サーバ11からプロバイダ側PDI-Aを取得するためのAPIであるプロバイダ側PDI-A取得APIを呼び出す。
【0218】
ステップS272において、コンテンツフィルタ54は、プロバイダ側PDI-A取得APIの出力引数として返されるプロバイダ側PDI-Aを取得する。
【0219】
ステップS273において、コンテンツフィルタ54は、PDIストア132に、サーバ11からのプロバイダ側PDI-Aに対応するPDI-FCが格納されているか否かを評価するためのAPIであるPDI-FC評価APIを呼び出す。
【0220】
PDI-FC評価APIの入力引数および出力引数を以下に示す。
入力引数:プロバイダ側PDI-A
出力引数:入力引数で指定されたプロバイダ側PDI-Aに対応するPDI-FCが格納されているか否かの評価結果(真/偽(true/false))
【0221】
なお、プロバイダ側PDI-Aは、プロバイダ側PDI-A取得APIにより取得されたプロバイダ側PDI-Aである。PDI-FC評価APIにより、プロバイダ側PDI-AがPDIストア132のデータを管理するDBMSに渡されると、DBMSは、PDIストア132に格納されているPDI-FCを用いてプロバイダ側PDI-Aを評価する。その評価結果に基づいて、プロバイダ側PDI-Aに対応するPDI-FCが格納されているか否かの評価結果が出力引数として返される。
【0222】
ステップS274において、コンテンツフィルタ54は、PDI-FC評価APIの出力引数として返されるPDI-FCの評価結果を取得する。
【0223】
ステップS275において、コンテンツフィルタ54は、PDI-FCの評価結果が真(true)となったプロバイダ側PDI-Aを含むコンテンツメタデータのコンテンツIDを同定する。
【0224】
ステップS276において、コンテンツフィルタ54は、サーバ11からコンテンツを取得するためのAPIであるコンテンツ取得APIを呼び出す。
【0225】
ステップS277において、コンテンツフィルタ54は、コンテンツ取得APIの出力引数として返されるコンテンツを取得する。
【0226】
このように、PDIストア132がデータベースとして構成される場合には、コンテンツフィルタ54は、PDI-FC評価APIを呼び出すことで、PDI-FCとプロバイダ側PDI-Aとのマッチングを行うことができる。
【0227】
以上のようにして、ユーザ側で設定されたPDI-FCによって、より複雑なフィルタリングの条件が表現されるようになるので、より確実に、ユーザ側が期待するコンテンツを取得させることが可能となる。
【0228】
ところで、本技術は、デジタルテレビジョン番組を放送する放送システムに適用することができるが、その一例として、ATSC(Advanced Television Standard Committee)方式を移動体受信に拡張させたATSC-M/H(Mobile/Handheld)方式で放送を行う放送システムに適用することができる。
【0229】
[ATSC-M/H方式で放送を行う放送システムへの適用例]
図26は、本技術を適用した、従来のATSC方式およびATSC-M/Hのそれぞれでデジタルテレビジョン番組を放送する放送システムの構成例を示す図である。
【0230】
図26の放送システムは、図1の放送システム10におけるサーバ11に対応し、ATSC Legacy System151、ATSC M/H System152、M/H Framing153、およびRF/Transmission System154を備えている。
【0231】
ATSC Legacy System151は、従来のATSC方式で、MPEG2-TS(Moving Picture Experts Group 2 Transport Stream)により放送ストリームを送出する。ATSC M/H System152は、ATSC-M/H方式でIPパケットの放送ストリームを送出する。ATSC M/H System152におけるControl Data152aは、ATSC M/H System152から送出される放送ストリーム(A/V(Audio/Video)コンテンツ)に関する制御情報である。
【0232】
そして、上述した放送ストリームそれぞれは、M/H Framing153によって多重化され、RF/Transmission System154によって放送波として送信される。なお、各ブロックの機能の詳細については、ATSCの規格に記載されているので、ここでは、その説明は省略する。
【0233】
図27は、ATSC-M/H方式で送信される放送波の信号におけるプロトコルスタックを示している。
【0234】
詳細な説明は省略するが、最も上位の階層の1つは、「Service Guide」とされ、ATSC-M/H方式で提供されるコンテンツのメタデータを規定している。図26で示されるControl Data152aは、「Service Guide」で規定されるコンテンツメタデータ(以下、単にService Guideという)として伝送される。すなわち、図26の放送システムにおいては、上述した放送システム10においてサーバ11からクライアント12に送信されるPDI-A(プロバイダ側PDI-A)やPDI-FC、PDI-Qは、Service Guideに格納されて送信される。
【0235】
なお、図27において、「Service Guide」に隣接する下位の階層「FLUTE」、および、「FLUTE」に隣接する下位の階層「ALC」は、UDP/IP(User Datagram Protocol/Internet Protocol)によってパケット化されたService Guideを転送するための階層である。
【0236】
このService Guideの仕様としては、OMA(Open Mobile Alliance)によって、図28に示されるデータ構成が規定されている。なお、図28に示されるService Guideの構成の詳細は、「"Service Guide for Mobile Broadcast Services", Open Mobile Alliance, OMA-TSBCAST_ServiceGuide-V1_0, Candidate Version 1.0」に規定されているため、その説明は省略する。
【0237】
PDI-A(プロバイダ側PDI-A)またはPDI-FCは、図28に示されるService Guideを構成する要素のうちの、「Service」フラグメント、「Schedule」フラグメント、および「Content」フラグメントのうちの少なくともいずれか1つに格納される。
【0238】
「Service」フラグメントは、チャネル・サービスの内容に関する制御情報を含むメタデータであり、図29は、その構成の詳細を示している。PDI-AまたはPDI-FCは、図29に示される「Service」フラグメントにおいて、最下段に規定されている「PrivateExt」要素に新たに、例えば「PDI-FC」要素を追加することで、そこに格納される。具体的には、例えば、「PDI-FC」要素は、XMLスキーマによって、<xs:element name = "PDI-FC" type = "xs:string" xmlns:xs = "http://www.w3.org/2001/XMLSchema"/>と文字列で表現されてエンコードされる。
【0239】
「Schedule」フラグメントは、コンテンツ(デジタルテレビジョン番組)の配信スケジュールに関する制御情報を含むメタデータであり、図30は、その構成の詳細を示している。PDI-AまたはPDI-FCは、図30に示される「Schedule」フラグメントにおいて、最下段に規定されている「PrivateExt」要素に新たに、例えば「PDI-FC」要素を追加することで、そこに格納される。具体的には、例えば、「PDI-FC」要素は、XMLスキーマによって、<xs:element name = "PDI-FC" type = "xs:string" xmlns:xs = "http://www.w3.org/2001/XMLSchema"/>と文字列で表現されてエンコードされる。
【0240】
「Content」フラグメントは、コンテンツ(デジタルテレビジョン番組)の内容に関する制御情報を含むメタデータであり、図31は、その構成の詳細を示している。PDI-AまたはPDI-FCは、図31に示される「Content」フラグメントにおいて、最下段に規定されている「PrivateExt」要素に新たに、例えば「PDI-FC」要素を追加することで、そこに格納される。具体的には、例えば、「PDI-FC」要素は、XMLスキーマによって、<xs:element name = "PDI-FC" type = "xs:string" xmlns:xs = "http://www.w3.org/2001/XMLSchema"/>と文字列で表現されてエンコードされる。
【0241】
また、PDI-Qは、図28に示されるService Guideを構成する要素のうちの、「Interactivity Data」フラグメントに格納される。
【0242】
「Interactivity Data」フラグメントは、チャネル・サービスやコンテンツ(テレビジョン番組)に関するアプリケーションについてのメタデータであり、図32は、その構成の詳細を示している。PDI-Qは、図32に示される「Interactivity Data」フラグメントにおいて、最下段に規定されている「PrivateExt」要素に新たに「PDI-Q」要素を追加することで、そこに格納される。具体的には、例えば、「PDI-Q」要素は、XMLスキーマによって、<xs:element name = "PDI-Q" type = "xs:string " xmlns:xs = "http://www.w3.org/2001 /XMLSchema"/>と文字列で表現されてエンコードされる。
【0243】
以上においては、本技術を、ATSC-M/H方式で放送を行う放送システムに適用した例について説明したが、従来のATSC方式でNRT(Non-RealTime)放送を行う放送システムに適用することもできる。NRT放送においては、リアルタイムでのコンテンツの視聴を前提としないため、データとして放送信号により放送されるコンテンツの放送時刻に同期してコンテンツを再生する必要はない。
【0244】
[NRT放送を行う放送システムへの適用例]
図33は、NRT放送で送信される放送波の信号におけるプロトコルスタックを示している。
詳細な説明は省略するが、最も下位の階層は、「Physical Layer(物理層)」とされ、放送波の周波数帯域がこれに対応する。「Physical Layer」に隣接する上位の階層は、「MPEG2-TS」とされ、放送波として放送される放送ストリームがこれに対応する。
【0245】
「MPEG2-TS」に隣接する上位の階層として、「ATSC-PSIP(Program and System Information Protocol)」および「MPEG2-PSI(Program Specific Information)」が示されている。「ATSC-PSIP」は、TVCTを有する階層とされ、「MPEG2-PSI」は、PAT(Program Association Table)、PMT(Program Map Table)を有する階層とされる。
【0246】
また、「MPEG2-TS」に隣接する上位の階層として、「DSM-CC(Digital Storage Media Command and Control) Addressable Section」が示されている。「DSM-CC Addressable Section」は、放送ストリームのMPEG2-TS上でIPパケットを転送するためのアダプテーションレイヤとして用いられる。
【0247】
図34は、TVCT、PAT、PMT、およびDSM-CC Addressable Sectionのデータ構造を示している。TVCTには、MPEG2-TSで放送される放送ストリームに関する制御情報が記述されており、TVCTに基づいて、IPパケットストリーム(UDP/IP Packets)を転送するためのDSM-CC Addressable Sectionを転送するMPEG2-TSが特定される。
【0248】
図33に戻り、「DSM-CC Addressable Section」に隣接する上位の階層として、「IP」が示され、さらに「IP」に隣接する上位の階層として、「UDP」が示されている。
【0249】
「UDP」に隣接する上位の階層として、「Service Signaling Channel」および「FLUTE/ALC(File Delivery over Unidirectional Transport/Asynchronous Layered Coding Protocol)」が示されている。「Service Signaling Channel」は、SMT(Service Map Table)およびNRT-IT(NRT Information Table)を有する階層とされる。「FLUTE/ALC」に隣接する上位の階層として、「FLUTE Session」が示されている。「FLUTE Session」は、FLUTE-FDT(File Delivery Table)およびA/V File(A/Vファイル)を有する階層とされる。
【0250】
図35は、SMT、NRT-IT、およびFLUTE FDTのデータ構造を示している。SMTには、チャネルに関するメタデータが記述され、NRT-ITには、コンテンツに関するメタデータが記述される。SMTおよびNRT-ITは、上述した「Service Signaling Channel」で転送される。FLUTE FDTには、A/Vファイルそれぞれを識別するための情報が記述されている。なお、A/Vファイルは、上述した「FLUTE/ALC」で転送される。
【0251】
ここで、NRT放送を行う放送システムにおいては、上述した放送システム10においてサーバ11からクライアント12に送信されるPDI-A(プロバイダ側PDI-A)やPDI-FC、PDI-Qは、SMTまたはNRT-ITに格納されて送信される。
【0252】
すなわち、配信されるコンテンツのフィルタリングを、チャネル(放送局)単位で行う場合には、SMTのサービスレベルのdescriptor loop(図中、「Service #1」の最下段)に、PDI-A、PDI-FC、またはPDI-Qを格納する「PDI descriptor」を新たに規定する。
【0253】
また、配信されるコンテンツのフィルタリングを、コンテンツ単位で行う場合には、NRT-ITのサービスレベルのdescriptor loop(図中、「Content #1」の最下段)に、PDI-A、PDI-FC、またはPDI-Qを格納する「PDI descriptor」を新たに規定する。
【0254】
図36は、「PDI descriptor」のシンタックスの例を示している。図36においては、記述される記述子のそれぞれが、ビット数(No.of Bits)およびフォーマット(Format)とともに定義されている。
【0255】
図36に示されるシンタックスによれば、PDI-A、PDI-FC、またはPDI-Qは、可変ビットである記述子「PDI_Q or PDI_A or PDI-FC」に記述される。
【0256】
なお、「PDI descriptor」のシンタックスは、図36に示された例に限るものではない。
【0257】
このように、本技術は、NRT放送を行う放送システムに適用することも可能である。
【0258】
なお、本技術は、上述したATSC-M/H方式で放送を行う放送システムや、NRT放送を行放送システム以外の方式で放送を行う放送システムに適用するようにしてももちろんよい。
【0259】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【0260】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図2に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスクを含む)、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア31、または、プログラムが一時的もしくは永続的に格納されるROM22や、記憶部28を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部29を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【0261】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0262】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【0263】
なお、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【0264】
10 放送システム, 11 サーバ, 12 クライアント, 41 PDI-Qジェネレータ, 42 通信部, 43 PDI-Aジェネレータ, 44 メタデータディストリビュータ, 45 コンテンツ蓄積部, 46 コンテンツディストリビュータ, 51 通信部, 52 PDI-Aジェネレータ, 53 PDIストア, 54 コンテンツフィルタ, 55 コンテンツ再生部, 56 コンテンツ蓄積部, 111 PDI-FCジェネレータ, 112 メタデータディストリビュータ, 131 PDI-FCジェネレータ, 132 PDIストア
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27
図28
図29
図30
図31
図32
図33
図34
図35
図36