JP2012003777A - 情報処理装置、方法及びプログラム - Google Patents

情報処理装置、方法及びプログラム Download PDF

Info

Publication number
JP2012003777A
JP2012003777A JP2011174878A JP2011174878A JP2012003777A JP 2012003777 A JP2012003777 A JP 2012003777A JP 2011174878 A JP2011174878 A JP 2011174878A JP 2011174878 A JP2011174878 A JP 2011174878A JP 2012003777 A JP2012003777 A JP 2012003777A
Authority
JP
Japan
Prior art keywords
script
content
alternative
child node
control information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2011174878A
Other languages
English (en)
Other versions
JP5175958B2 (ja
Inventor
Kenji Odaka
健二 小高
Satoru Ozaki
哲 尾崎
Eiji Tokita
英二 時田
Shiro Wakayama
史郎 若山
Yoshiki Terajima
芳樹 寺島
Kensaku Fujimoto
謙作 藤本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2011174878A priority Critical patent/JP5175958B2/ja
Publication of JP2012003777A publication Critical patent/JP2012003777A/ja
Application granted granted Critical
Publication of JP5175958B2 publication Critical patent/JP5175958B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】自動的に代替コンテンツに置き換えることができる。
【解決手段】自身の代替を行うか、木構造上1つ上の親ノードを代替するかを示す制御情報をもつコンテンツおよび子ノードスクリプトを、少なくとも1つ含むスクリプトを複数格納する第1格納手段101と、親ノードスクリプトを解析し、必要に応じ子ノードスクリプトを取得してさらに解析する解析手段102と、コンテンツを取得しようとする第1取得手段103と、必要に応じて代替コンテンツを検索する検索手段104と、必要に応じ代替子ノードスクリプトまたは代替親ノードスクリプトを検索する検索手段107と、検索した代替コンテンツを取得する第2取得手段105と、検索した代替スクリプトを取得する第3取得手段108と、取得した代替コンテンツ、代替子ノードスクリプトおよび代替親ノードスクリプトの少なくとも1つを変更した変更スクリプトを得る変更手段110と、を具備する。
【選択図】図1

Description

本発明は、複数のコンテンツを組み合わせて出力する情報処理装置、方法及びプログラムに関する。
実質的に同様のメディアコンテンツを有する複数のメディアファイルから、再生特性に応じて再生ファイルを自動選択するシステムが存在する。一方、履歴やメタデータを利用してコンテンツを自動推薦する技術はDVDレコーダーなどの製品にも搭載されており、既存技術となっている。ただし、これらはメディアファイルやコンテンツが取得不可能になった場合を想定したものではなく、既に取得済の複数のコンテンツをどのように活用するか、という点に着目したものであった(例えば、特許文献1参照)。
特開2008−152259号公報
複数の権利者のサービス・コンテンツをあるスクリプトに従って組み合わせて表示する機器においては、コンテンツの内容の一部分だけが突然利用できなくなる可能性がある。原因としてはコンテンツ提供者がサービス提供を一時的もしくは恒久的に中止した、コンテンツの利用条件(例えば契約内容や利用料金など)が変更になり利用できなくなった、などが考えられる。また、スクリプトとコンテンツの提供者が異なるとき、スクリプト提供者はコンテンツが利用できなくなることを事前に把握できない、という問題がある。
しかしながら、上記した従来の技術ではコンテンツの管理者と再生するコンテンツの決定者および推薦者は同一と考えられている。つまり、再生時、コンテンツの取得状況は自明と言えるため、再生時にコンテンツの取得が不可能になった場合のことは想定していない。
本発明は、上記の課題を解決するためになされたものであり、複数の権利者から取得したコンテンツをさらに別の権利者またはユーザが作成したスクリプトにしたがい組み合わせて情報を出力するシステムにおいて、一部のコンテンツが利用不可能になった場合に、自動的に代替となるコンテンツに置き換えるための情報処理装置、方法およびプログラムを提供することを目的とする。
上述の課題を解決するため、本発明に係る情報処理装置は、木構造を構成するスクリプトであって子ノードである子ノードスクリプトの取得に失敗した場合に該子ノードスクリプトの代替となる代替子ノードスクリプトを検索するか否かを示す第1スクリプト制御情報、および、該子ノードスクリプトの木構造上1つ上のノードの親ノードスクリプトの代替である第1代替親ノードスクリプトを検索するか否かを示す第2スクリプト制御情報を含む、該子ノードスクリプトへのリンクを示す第1子ノードスクリプトと、コンテンツの取得に失敗した場合に代替となる代替コンテンツを検索するか否かを示す第1コンテンツ制御情報、および、該コンテンツの木構造上1つ上のノードの親ノードスクリプトの代替である第2代替親ノードスクリプトを検索するか否かを示す第2コンテンツ制御情報を含む、該コンテンツへのリンクを示す第1コンテンツと、を使用する情報処理装置であって、前記木構造を構成するスクリプトを複数格納する第1格納手段と、前記第1格納手段が格納している複数のスクリプトの中から1つのスクリプトを親ノードスクリプトとして選択し、該親ノードスクリプトの子ノードの1つであり子ノードスクリプトへのリンクである第2子ノードスクリプトに含まれる、第1スクリプト制御情報および第2スクリプト制御情報を参照してそれぞれ検索するか否かを解析し、該親ノードスクリプトの子ノードの1つでありコンテンツへのリンクである第2コンテンツに含まれる、第1コンテンツ制御情報および第2コンテンツ制御情報を参照してそれぞれ検索するか否かを解析し、前記第2子ノードスクリプトに示されているリンクにある第3子ノードスクリプトがあれば取得して、取得した第3子ノードスクリプトについてさらに解析をおこなうスクリプト解析手段と、前記第2コンテンツに示されているリンクにある第3コンテンツがあれば取得するコンテンツ取得手段と、前記第3コンテンツの取得に失敗して、前記第2コンテンツの第1コンテンツ制御情報が代替コンテンツを検索することを示すと解析した場合は該代替コンテンツを検索する代替コンテンツ検索手段と、前記第3子ノードスクリプトの取得に失敗して、前記第2子ノードスクリプトの第1スクリプト制御情報が代替子ノードスクリプトを検索することを示すと解析した場合は該代替子ノードスクリプトを検索し、前記第2コンテンツの第2コンテンツ制御情報および前記第2子ノードスクリプトの第2スクリプト制御情報のいずれか一方が代替親ノードスクリプトを検索することを示す場合は代替親ノードスクリプトを検索する代替スクリプト検索手段と、代替コンテンツが見つかった場合は該代替コンテンツを取得する代替コンテンツ取得手段と、代替子ノードスクリプトおよび代替親ノードスクリプトが見つかった場合は、それぞれ該代替子ノードスクリプトおよび該代替親ノードスクリプトを取得する代替スクリプト取得手段と、前記代替コンテンツの保存場所を示す第1代替コンテンツを前記第2コンテンツに反映するか、代替子ノードスクリプトへのリンクを示す第1代替子ノードスクリプトを前記第2子ノードスクリプトに反映するか、および、代替親ノードスクリプトを前記親ノードスクリプトに反映するか、の少なくとも1つを変更した変更スクリプトを得る変更手段と、を具備することを特徴とする。
本発明の情報処理装置、方法及びプログラムによれば、一部のコンテンツが利用不可能になった場合に自動的に代替となるコンテンツに置き換えることができる。
本実施形態に係る情報処理装置のブロック図。 スクリプトの構成を示す図。 スクリプトの木構造を示す図。 スクリプトのXMLでの記述例を示す図。 スクリプトのXMLでの記述例の別例を示す図。 本実施形態に係る情報処理装置の動作を示すフローチャート。 代替コンテンツ検索部および代替コンテンツ取得部の動作を示すフローチャート。 代替スクリプト検索部および代替スクリプト取得部の動作を示すフローチャート。 コンテンツの代替における代替をおこなう前の状態の一例を示す図。 コンテンツの代替のスクリプト記述例を示す図。 コンテンツの代替における代替をおこなった後の状態の一例を示す図。 代替スクリプトの代替をおこなう前の状態の一例を示す図。 代替スクリプトのスクリプト記述例を示す図。 代替スクリプトのスクリプト記述例の別例を示す図。 代替スクリプトの代替をおこなった後の状態の一例を示す図。 スクリプトの変更をおこなう前の状態の一例を示す図。 スクリプトの変更をおこなう際のスクリプト記述例を示す図。 スクリプトの変更をおこなった後の状態の一例を示す図。
以下、図面を参照しながら本発明の実施形態に係る情報処理装置、方法及びプログラムについて詳細に説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
(実施形態)
本発明の本実施形態に係る情報処理装置について図1を参照して説明する。本実施形態に係る情報処理装置は、端末に載せることを前提としているが、サーバにあってもよい。
本実施形態に係る情報処理装置100は、スクリプトストレージ部101、スクリプト解析部102、コンテンツ取得部103、代替コンテンツ検索部104、代替コンテンツ取得部105、スクリプトフラグチェック部106、代替スクリプト検索部107、代替スクリプト取得部108、フラグ格納部109、スクリプト変更部110、コンテンツキャッシュ部111を含む。
スクリプトストレージ部101は、複数のスクリプトを格納している。スクリプトはウェブ上のスクリプト提供者からの受信、情報処理装置100の利用者による作成や情報処理装置100内での自動生成などの方法で作成され、プレイリスト、メタデータなどを含んでいる。スクリプトについては、後に図2、図4を参照して詳細に説明する。またスクリプトストレージ部は、スクリプト解析部102と代替スクリプト取得部108へスクリプトを送る。
スクリプト解析部102は、スクリプトストレージ部101からあるスクリプトを読み出し、これを親ノードスクリプト(または親スクリプトとも呼ぶ)としてスクリプトの解析をおこなう。親ノードスクリプトは、このスクリプトがもつプレイリスト中にさらにスクリプトを含む場合をいう。この親ノードスクリプトに含まれているスクリプトを子ノードスクリプト(または子スクリプトとも呼ぶ)と呼ぶ。プレイリストがコンテンツを含むものであれば、コンテンツ取得部103に送り、プレイリストがスクリプトを含むものであれば、スクリプトストレージ部101から対応するスクリプトを取得する。また、プレイリスト中のコンテンツや子ノードスクリプトがもつフラグをフラグ格納部109へ送る。フラグは、取得に成功したか、あるいは代替となるものを取得したか等の条件を示すものであり、後に詳細に説明する。またスクリプト解析部102は、スクリプトの処理が全て終わった場合は、スクリプト変更部110から受け取ったスクリプトを外部へ出力する。
コンテンツ取得部103は、スクリプト解析部102からスクリプトを受け取り、外部のコンテンツ提供者A150およびコンテンツ提供者B151からコンテンツの取得をおこなう。コンテンツの取得に成功した場合または親ノードスクリプトそのものの代替が必要である場合は、スクリプト解析部102に送る。コンテンツの取得に失敗した場合は、代替コンテンツ検索部104へ送る。コンテンツの取得に失敗した場合とは、例えばコンテンツの提供者が一時的または恒久的に中止した、またはコンテンツの利用条件(例えばユーザの契約内容や利用料金など)が変更され、コンテンツ提供者からのコンテンツを利用できない場合などがある。
代替コンテンツ検索部104は、代替コンテンツの検索をおこなう。代替コンテンツは、はじめの親ノードスクリプトで指定されたコンテンツの同様またはそれに類似した情報内容を含むコンテンツである。代替コンテンツの検索は、コンテンツキャッシュ部111や外部にある照合情報保持サーバ153を参照して検索をおこなう。検索によって代替コンテンツが見つかった場合は、検索結果を代替コンテンツ取得部105へ送る。
代替コンテンツ取得部105は、代替コンテンツ検索部104から受け取った検索結果をもとに、代替コンテンツを外部にある代替コンテンツ提供者152から取得する。代替コンテンツの取得に成功した場合、フラグをフラグ格納部109へ送り、取得内容をスクリプト変更部110へ送る。
スクリプトフラグチェック部106は、スクリプト解析部102から受け取ったプレイリストに含まれるフラグのチェックをおこなう。チェックを終えてスクリプト(親ノードスクリプトまたは子ノードスクリプト)の代替が必要でない場合は、スクリプト解析部102へ送る。スクリプトの代替が必要である場合、代替スクリプト検索部107へ進む。
代替スクリプト検索部107は、子ノードスクリプトの代替をおこなう場合または親ノードスクリプトの代替をおこなう場合に、代替スクリプトの検索をおこなう。代替スクリプトの検索は、外部の照合情報保持サーバ153やスクリプトストレージ部101からおこなう。検索によって代替となるスクリプトが見つかった場合には、検索結果を代替スクリプト取得部108へ送る。
代替スクリプト取得部108は、代替スクリプト検索部107から受け取った検索結果をもとに、代替スクリプトを外部にある代替スクリプト提供サーバ154またはスクリプトストレージ部101から取得する。代替スクリプトの取得に成功した場合、フラグをフラグ格納部109へ送り、取得内容をスクリプト変更部110へ送る。
フラグ格納部109は、各コンテンツや各スクリプトが持つフラグの値を格納し、必要に応じてスクリプト変更部110へ送る。
スクリプト変更部110は、フラグ格納部109から受け取ったフラグの値に応じて、プレイリスト全体のフラグについてマージ処理を行う。マージ処理した結果によりスクリプトの変更を行う必要がある場合は、子ノードスクリプトまたは親ノードスクリプトのプレイリストを書き換える。またスクリプト変更部110は、書き換えたこれらのスクリプトをスクリプト解析部102へ送る。
コンテンツキャッシュ部111は、代替となるコンテンツのキャッシュを記録してあり、外部から取得したコンテンツのキャッシュについても更新して記録する。
次に、スクリプトについて図2、図3を参照しながら説明する。スクリプト200は、プレイリスト210とメタデータ220を含む。
プレイリスト210は、サービス・コンテンツの表示順を示しており、例えばどのコンテンツを表示させるかを示す。プレイリスト210に並べられた順にコンテンツを取得する。子ノードスクリプトへのリンクと制御情報211、コンテンツへのリンクと制御情報212を少なくとも1つ以上含む。つまりスクリプト200は、複数のスクリプトを木構造で構成して構造化することができるようになっている。子ノードスクリプトへのリンクと制御情報211は、スクリプトの木構造のリンクを表現するためと、子ノードスクリプトに対する制御情報を記述するためのものである。
木構造で構造化した一例を図3を参照して説明する。スクリプト301を基となる親ノードスクリプト(ルート;根ノードとも呼ぶ)とすれば、スクリプト301のプレイリスト中に、スクリプト302、303へのリンクがあり、これが子ノードスクリプトとなる。スクリプト303のプレイリスト中には、さらに次の子ノードスクリプトとなるスクリプト304へのリンクがなされている。スクリプト304から見れば、スクリプト303は親ノードスクリプトとなる。このように複数のスクリプトを入れ子状態で組み合わせて用いることができる。
また、コンテンツへのリンクと制御情報212は、図1のコンテンツ提供者A150やコンテンツ提供者B151などのコンテンツの提供者に対するリンク情報と、コンテンツへのリンクが指し示すコンテンツに対する制御情報を記述するためのものである。
メタデータ220は、名前、作成者、ジャンル、キーワード、権利者情報、説明文などを含む属性情報を記述するためのものであり、スクリプト200自身の属性情報を記述するスクリプト自身のメタデータ221と、プレイリスト220でリンクされた子ノードスクリプトやコンテンツのメタデータを記述するプレイリスト中の子ノードスクリプトおよびコンテンツのメタデータ222を含む。
このスクリプト200をXML(Extensible Markup Language)形式で記述した一例を図4および図5に示す。
図4は「朝のニュース情報」という名前のスクリプトであり、その内容は“daily_news”という子ノードスクリプトと、“marumaru_weather”という子ノードスクリプトと、“sports_news”という子ノードスクリプトによって構成されている。
図4のスクリプト中の子ノードスクリプトのうち、“marumaru_weather”スクリプトの記述例が図5である。“marumaru_weather”スクリプトは、“kyouasu_weather”という子ノードスクリプトと、“otenki.jp/weekly”というコンテンツと、“amederu.jp/”というコンテンツと、“typhoon.jp/”というコンテンツによって構成される。
それぞれの子ノードスクリプトにおいて、<scriptmeta>タグで囲まれた部分がスクリプト自身のメタデータ221、<playlist>タグで囲まれた部分がプレイリスト210、その子エレメントのうち、<subscript>タグで囲まれた部分が子ノードスクリプトへのリンクと制御情報211、<content>タグで囲まれた部分がコンテンツへのリンクと制御情報212となる。
<subscript>タグおよび<content>タグの子エレメントのうち<meta>タグで囲まれた部分がプレイリスト中の子ノードスクリプトおよびコンテンツのメタデータ222である。
<subscript>タグの属性“id”が子ノードスクリプトへのリンクで、子ノードとなるスクリプトの判別は<script>タグの属性“id”とのマッチングにより行われる。<content>タグの属性“url”はコンテンツへのリンクである。
<subscript>タグおよび<content>タグの子エレメントのうち<control>タグに書かれている部分が制御情報にあたる。制御情報として、図4および図5の例では以下の2つを記述している。
制御情報1:取得に失敗したときに置き換えを行うかどうか
制御情報2:取得および代替に失敗したときに、呼び出し元の親ノードスクリプトそのもの代替を行うかどうか
この2つの制御情報について、制御情報1は、<control>タグの子エレメントである<alternate>タグに‘yes’または‘no’で記述している。‘yes’の場合はコンテンツおよびスクリプトの取得に失敗ときに代替による置き換えを行い、‘no’の場合は代替による置き換えを行わない。制御情報2は<content>タグの子エレメントである<mandatory>タグに‘yes’または‘no’で記述し、‘yes’の場合はコンテンツおよびスクリプトの取得および代替の取得に失敗したときに、現在注目しているスクリプトより1つ上の階層のノードである親ノードスクリプトそのものの代替を行い、‘no’の場合はその代替を行わない、とする。
以後の説明では、<subscript>タグもしくは<content>タグで囲まれたひとかたまりをプレイリスト中の1件と定義して説明を進めていくものとする。 プレイリストの再生順については、上から記述された順に処理することを基本とするが、スクリプトは繰り返しや分岐、入れ子などの制御構造を持った文法としても良い。
<コンテンツ収集処理>
次に、スクリプトストレージ部101から、あるスクリプトを読み出して処理をおこなう手順を図4から図8を参照して詳細に説明する。
なお、スクリプトの処理ではプレイリストの1件ごとに以下の3つのフラグを用意して処理を進める。なお、フラグは初期ではすべて「OFF」になっているものとする。各フラグの「ON」となる条件を以下に示す。
フラグ1:「取得成功」コンテンツまたは子ノードスクリプトの取得に成功したら「ON」
フラグ2:「代替を取得」コンテンツまたは子ノードスクリプトの取得には失敗したが、代替コンテンツまたは代替子ノードスクリプトの検索または取得には成功したら「ON」
フラグ3:「親ノードスクリプトそのものの代替」コンテンツまたは子ノードスクリプトの取得および代替の両方に失敗し、さらに制御情報2が‘yes’であった場合に「ON」
なお、コンテンツの取得状況については、<content>タグの属性“url”から必要な情報が取得できたかによって決定する。
ここで、スクリプトの読込みからスクリプトの書き換えまでの動作を図6のフローチャートを参照しながら詳細に説明する。
はじめに、スクリプト解析部102は、スクリプトストレージ部101からあるスクリプトを、はじめに親ノードスクリプトとして読み出す(S601)。次に、読み込んだ親ノードスクリプトのプレイリストのうち、最初に書かれている1件を読み込む(S602)。そして、読み込んだ1件の内容がコンテンツであるか、子ノードスクリプトであるかを判定する(S603)。読み込んだ1件がコンテンツである場合には、コンテンツ取得部103において「コンテンツ取得」処理を行う(S604)。
S605において、コンテンツの取得に成功した場合には、処理をスクリプト解析部102に戻し、プレイリストの処理中の1件についてについてフラグ1「取得成功」を「ON」にする。そしてプレイリストの次の1件の取得を試みるためS611へ移り、プレイリストに次の1件があるかどうかを判定する。次の1件がある場合はS602へ戻り再び処理を進める。次の1件がない場合は、S612へ進む。
S605において、コンテンツの取得に失敗した場合は、S607へ進み「代替コンテンツ検索および取得」処理をおこなう。代替コンテンツ検索および取得の処理については図7を参照して詳細に説明する。
<代替コンテンツ検索および取得>
まずプレイリストの処理中について制御情報1の内容をチェックする(S701)。制御情報1の内容を示す<alternate>タグの中身が‘yes’の場合には、置き換えを許可と判断してS702へ進み、代替コンテンツの検索を行う。制御情報1が‘no’の場合には、コンテンツの代替を行わず、制御情報2の内容チェックをおこなうためS706へ進む。
S702における代替コンテンツの検索は、スクリプトに書かれたメタデータやコンテンツのURLをキーに、外部の照合情報保持サーバ153への問い合わせ、もしくはコンテンツキャッシュ部111内のコンテンツに対するマッチングによって行う。キーのマッチング方法については完全一致を基本とするが、部分一致や、関連する単語を別の辞書により探しだし、その結果をキーに代替コンテンツを検索しても良い。代替コンテンツの検索については、スクリプト中にどのような検索方法を用いるか記述してもよい。
また、コンテンツが画像や音声、テキストなどの単一のメディアではなく、HTML(HyperText Markup Language)やXMLなどのマークアップ言語とそのリンクに記載されたマルチメデイアデータであった場合、そのうち一部のみ取得に失敗することがあり得る。この場合には、取得に失敗した一部のデータのみの代替を検索しても良い。そのとき、検索にはスクリプトに記載された情報だけでなく、取得に成功したデータをテキスト処理、信号処理を行って解析し、検索のキーを生成しても良い。さらに、代替コンテンツの検索は、照合情報保持サーバ153またはシステム内部のキャッシュ(コンテンツキャッシュ部111など)への問い合わせを想定しているが、その両方が利用できる場合、どちらを優先するかについてはシステムで決定もしくはスクリプト上で指定することが考えられる。問い合わせの優先度をスクリプト上に直接記述してもよい。
S703において、代替コンテンツが見つかった場合には、S704に進み代替スクリプト取得部108において代替コンテンツを取得する。そして、プレイリストの処理中の1件についてフラグ2「代替を取得」を「ON」にし(S705)、フラグ2をフラグ格納部109へ送り「END」からS607に戻る。
S703において代替コンテンツが見つからなかった場合には、制御情報1のチェックで‘no’だった場合と同様、制御情報2の内容チェックへと進む(S706)。制御情報2の内容が‘yes’(親ノードスクリプトそのものの代替行う)の場合には、S707に進みプレイリストの処理中の1件についてフラグ3「親ノードスクリプトそのものの代替」を「ON」にし、「END」からS607に戻る。
制御情報2の内容が‘no’(親ノードスクリプトそのものの代替を行わない)の場合は、フラグ3「親ノードスクリプトそのものの代替」は「OFF」のまま、「END」からS607に戻る。
<子ノードスクリプト呼び出し処理>
次に、S602で読み込んだ次の1件が子ノードスクリプトであった場合のS603における処理について示す。
子ノードスクリプトであった場合には、S608に進み、子ノードスクリプトへのリンクに記述されたidをスクリプトストレージ部101から子ノードスクリプトを取得し、新たに取得したスクリプトについて、もとの子ノードスクリプト同様に図6の「START」から処理を行う。子ノードスクリプトの処理は、その子ノードスクリプトの中にさらに新たなスクリプトを含むかどうかを解析し、新たなスクリプトを含む場合は先に新たなスクリプトの処理をおこない、処理中のスクリプトのプレイリスト内に新たなスクリプトを含まない子ノードまで、つまりプレイリスト中にコンテンツのみを含んでいる子ノードにいたるまで順次先に処理を行う。子ノードスクリプトのプレイリスト中に新たなスクリプトがない場合は、その子ノードスクリプト内での処理を終えて、一つ上のノードスクリプトに処理がうつりさらに新たなスクリプトがないかどうかを解析する。このように子ノードスクリプトの再帰的な処理が終了し、処理が上のノードへ戻ってくると、スクリプトフラグチェック部106において、子ノードスクリプトの取得状況をチェックする(S609)。
子ノードスクリプトの取得状況は、子ノードスクリプトの処理の結果、子ノードスクリプトの処理結果でフラグ3が「OFF」の場合を成功、と定義する。ただし、他の実施形態においては「制御情報として代替コンテンツが入っていてはいけない」といった制御情報を追加してもよい。その場合には、子ノードスクリプトの処理の結果、子ノードスクリプトの処理結果でフラグ2が「OFF」の場合を成功、と定義されることになる。
子ノードスクリプトの取得が成功と判定された場合には、処理をスクリプトフラグチェック部106からスクリプト解析部102に戻し、プレイリストの処理中の1件についてについてフラグ1「取得成功」を「ON」にし(S606)、プレイリストの次の1件の取得を試みてS611の処理へ進む。次の1件がある場合はS602へ戻り再び処理を進める。次の1件がない場合は、S612へ進む。
<代替スクリプト検索および取得>
S609において、子ノードスクリプトで取得失敗となったものがあった場合には、S610における「代替スクリプト検索および取得」の処理を行う。この処理を行うために図8の「START」へと処理が移る。S610における具体的な処理を図8を参照して説明する。
まず、プレイリストの処理中の1件について制御情報1の内容をチェックする(S801)。制御情報1の内容である<alternate>タグの中身が‘yes’の場合には置き換えを許可と判断し、S802へ進み代替スクリプトの検索処理に移る。制御情報1の内容が‘no’の場合には、スクリプトの代替を行わず、制御情報2の内容チェックをおこなうためS806へと進む。
代替スクリプトの検索は、スクリプトに書かれたメタデータやコンテンツのURL、もしくは子ノードスクリプトに書かれたメタデータやコンテンツのURL、取得した一部のコンテンツ内のメタデータやコンテンツそのものをキーとして、外部の照合情報保持サーバ153への問い合わせ、もしくはスクリプトストレージ部101に対するマッチングによって行う。取得のキーがテキスト情報である場合には、完全一致を基本とするが、部分一致は関連する単語を別の辞書をベースに検索し、関連する単語をベースに検索しても良い。代替スクリプトの検索については、スクリプト中にどのような検索方法を用いるか記述することも考えられる。また、スクリプト中の取得に成功した一部のコンテンツがテキスト以外のデータ(画像、音声、動画など)である場合には、画像認識および音声認識などの信号処理を行い、検索のキーとしても良い。
代替スクリプトの検索は、照合情報保持サーバ153またはシステム内部のキャッシュ(スクリプトストレージ部101など)への問い合わせを想定しているが、その両方が利用できる場合、どちらを優先するかについてはシステムで決定、もしくは親ノードスクリプト上で指定することが考えられる。問い合わせの優先度を親ノードスクリプト上に直接記述しても良いものとする。
S803において、代替スクリプトが見つかった場合には、代替スクリプト取得部108において代替スクリプトを取得し(S804)、プレイリストの処理中の1件についてについてフラグ2「代替を取得」を「ON」にする(S805)。このフラグ2をフラグ格納部109へ送り、「END」からS610に戻る。
代替スクリプトが見つからなかった場合には、制御情報1のチェックで‘no’だった場合と同様、制御情報2の内容チェックへと進む(S806)。制御情報2の内容が‘yes’(親ノードスクリプトそのものの代替行う)の場合にはプレイリストの処理中の1件についてフラグ3「親ノードスクリプトそのものの代替」を「ON」にし(S807)、「END」からS610に戻る。
制御情報2の内容が‘no’(親ノードスクリプトそのものの代替を行わない)の場合は、フラグ3「親ノードスクリプトそのものの代替」は「OFF」のまま、「END」からS610に戻る。
プレイリストの1件の処理が終了すると、プレイリストに次のコンテンツまたは子ノードスクリプトの記述があるかどうかをチェックする(S611)。次の1件が存在する場合には、S602へ戻り、プレイリストの次の1件を読み込んで同様の処理をおこなう。
次の1件が存在しない場合には、プレイリスト中のすべてのコンテンツおよび子ノードスクリプトを処理し終わったこととなり、親ノードスクリプトのプレイリストの処理結果のフラグのマージへ移る(S612)。
S612において、各プレイリストが有する処理結果のフラグのマージ処理をおこなう。プレイリスト1件ごとのフラグをプレイリスト全体でマージした結果は、処理中のスクリプトの親ノードスクリプトにおいて子ノードスクリプトの処理結果として用いられる。処理中のスクリプトが、ある親ノードスクリプトから呼び出された子ノードスクリプトであった場合、図6の「END」の処理が終わると、親ノードスクリプトのS608の処理へ戻る。そしてS609でのフラグのチェックと、親ノードスクリプトのプレイリスト処理終了時でのフラグのマージにおいてこの処理結果が利用される。
フラグのマージ方法は以下の通りである。
フラグ1:「取得成功」のマージ
フラグ1はコンテンツおよび子ノードスクリプトの取得に成功したら「ON」となる。「OFF」となっているスクリプトが1つでもある場合には、完全に取得できたとはいえないため、フラグをAND演算したものを、マージ結果とする。
フラグ2:「代替を取得」のマージ
フラグ2はコンテンツおよび子ノードスクリプトの取得には失敗したが、代替コンテンツの検索および取得に成功した場合に「ON」となる。代替を取得したコンテンツおよび子ノードスクリプトが1つでもある場合には、どこかで代替が行われたことになるため、フラグをOR演算したものをマージ結果とする。
フラグ3:「親ノードスクリプトそのものの代替」のマージ
フラグ3は、コンテンツおよび子ノードスクリプトの取得および代替の両方に失敗し、さらに制御情報2、つまり親ノードスクリプトそのものの代替が‘yes’であった場合に「ON」となる。取得および代替の失敗により親ノードスクリプトそのものの代替を要求する、コンテンツおよび子ノードスクリプトが1つでもあった場合には、スクリプトそのものを代替することを示すフラグであるため、フラグをOR演算したものをマージ結果とする。
スクリプトのフラグのマージが終わると、スクリプト変更部110においてスクリプトの書き換えが行われる(S613)。なお、更新したスクリプトをスクリプトストレージ部101へ格納し、コンテンツが取得できなかったスクリプトについて書き換えてもよい。
スクリプトの書き換え処理が終わると、1つのスクリプトの処理は終了となり、スクリプト解析部102へ戻る。このとき、処理していたスクリプトに親ノードスクリプトが存在する場合には、S608の「子ノードスクリプトの処理」に戻り、親ノードスクリプトの処理を再開する。親ノードスクリプトが存在しない場合には、スクリプト全体の木構造のスクリプトの処理の終了、つまりスクリプト全体の処理が終了したと判断して外部への出力処理を行う。
<スクリプト書き換えの例>
ここから、スクリプトの記述例である図4、図5、および図9から図18を用い、スクリプト変更部110における実際のスクリプト書き換えの例を示す。図5のスクリプト“marumaru_weather”は、図4のスクリプト“morning_news”から子ノードスクリプトとして呼び出される関係となっている。スクリプト変更部110では、以下の3つのいずれかの場合にスクリプトの書き換えを行う。
・コンテンツの代替による書き換え
・スクリプトの代替による書き換え
・スクリプトおよびコンテンツの代替を行わず、スクリプトから削除
なお、実施形態においてスクリプト変更部110での書き換え処理は、スクリプト代替の取得条件の判定や、代替コンテンツ・スクリプトの取得などが終わった後に、1つのスクリプト単位で行われる。そのため、システムはスクリプトの変更すべき内容について、フラグ格納部109に格納したフラグを参照して書き換え処理をおこなう。なお、内部のメモリやキャッシュに保持しておき、スクリプト変更部110ではその情報を参照して書き換え処理をおこなってもよい。
<コンテンツの代替の例>
まず、コンテンツの代替について図4、図5および図9から図11を用いて示す。コンテンツの代替が行われるのは、制御情報1が‘yes’であり、代替コンテンツを取得してフラグ2が「ON」になっている場合である。
図9のように、図5の2件目のコンテンツであるコンテンツURL“otenki.jp/weekly”が取得できない状態を考える。この場合、<alternate>タブが‘yes’であるため、このコンテンツの取得できない場合の代替コンテンツを検索する。図5のスクリプトの“otenki.jp/weekly”のコンテンツ記述部分が、“sankaku−tenki.jp/weekly”のコンテンツ記述に書き換えられた一例を図10に示す。このとき、コンテンツURL“sankaku−tenki.jp/weekly”というコンテンツが見つかった場合、コンテンツの構成例は図11のようになる。
<親ノードスクリプトの代替の例>
次に、親ノードスクリプトの代替について図4、図5および図12から図15を用いて示す。親ノードスクリプトの代替が行われるのは、図6に示した子ノードスクリプト取得情報の確認において、親ノードスクリプトそのものの代替が必要と判断され、フラグ3が「ON」となり、親ノードスクリプトの代替を検索および取得に成功した場合である。
図12のように、コンテンツURL“amederu.jp/”の取得に失敗した場合を考えてみる。このとき、図5のコンテンツURL“amederu.jp/”の制御情報では、<alternate>が‘no’で、<mandatory>が‘yes’となっている。そのため、“amederu.jp/”を含む親ノードスクリプトである“marumaru_weather”そのものの代替が必要となる。このとき、各コンテンツのメタデータ、この例では<meta>タグの子エレメントの内容をキーにして、同じような<meta>タグを持った代替スクリプトを検索する。
図5の例では、子ノードスクリプト“kyouasu_weather”に含まれる<keyword>タグとして「今日明日の天気」および「きょうあすの天気」、コンテンツURL“otenki.jp/weekly”に含まれる<keyword>タグとして「週間天気」、コンテンツURL“amederu.jp/”に含まれる<keyword>タグとして「降雨情報」および「アメデル」、コンテンツURL“typhoon.jp/”に含まれる<keyword>タグとして「台風情報」が記述されている。これらのキーを元に、子ノードスクリプトおよびコンテンツの単位で代替すべき内容が分離されていると考え、検索した結果見つかったコンテンツの例を図13の“batsubatsu_weather”の代替スクリプトの記述例に示す。また、“batsubatsu_weather”を含むように図4のスクリプトを書き換えた一例を図14に示す。このときのコンテンツの構成例は図15のようになり、「降雨情報」などの親ノードスクリプトである「○○天気予報」が、「××天気予報」に置き換わり、コンテンツ取得場所も変更される。
<スクリプトおよびコンテンツの代替を行わずにスクリプトから削除>
次に、スクリプトおよびコンテンツの代替を行わず、スクリプトから削除する場合について図4、図5および図16から図18を用いて示す。スクリプトおよびコンテンツの代替を行わずにスクリプトから削除するのは、子ノードスクリプトおよびコンテンツの取得および代替に失敗し、図7または図8の制御情報2の判定で、親ノードスクリプトそのものの代替を行わない、つまり<mandatory>タグが‘no’となっている場合である。
ここでは図16のように、コンテンツURL“typhoon.jp/”が取得できなかった場合を考える。このとき、図5のコンテンツURL“typhoon.jp/”の制御情報では、<alternate>が‘no’で、<mandatory>が‘no’となっている。そのため、“typhoon.jp/”の代替および親ノードスクリプトの代替はおこなわず、図5のスクリプトからコンテンツURL“typhoon.jp/”を削除する。図5のスクリプトからコンテンツURL“typhoon.jp/”を削除した結果のスクリプト記述例を図17に示す。このときのコンテンツの構成例は図18のようになり、「台風情報」というタイトルの記述なくなっている。
システムの大まかな処理手順は、スクリプトストレージ部101から1つのスクリプトを基となる親ノードスクリプトとして読み込み、すべての葉ノード(子ノードスクリプト)までのスクリプトの処理が終わり、全てのコンテンツの取得および代替または削除が終了したら出力するというものであるが、すべてのコンテンツを取得してからではなく、1つのスクリプト中のコンテンツを取得できればそのたびに出力してもよいし、取得に成功したコンテンツから順に出力してもよい。
上述した実施形態によれば、スクリプト中のコンテンツおよび子ノードスクリプトごとに代替をおこなうか、親ノードスクリプトの代替をおこなうかの制御情報のパラメータを持たせ、コンテンツの取得に失敗したときにパラメータに応じて自動的に代替を検索して置き換えをおこなう。その際に複数のスクリプトを木構造で構成し、葉ノード(子ノードスクリプト)から順にコンテンツの取得結果および取得に失敗したときの代替コンテンツの取得結果を親ノード(親ノードスクリプト)に伝達する処理をおこなう。これにより、スクリプト提供者の意思を尊重しながら、元のスクリプトに対する変更範囲を最小限に抑えることができ、代替コンテンツへの置き換えをおこなう処理単位を柔軟に変更できるようになる。その結果、スクリプトとスクリプトに従って構成されたコンテンツとを利用者に提供し続けることができる。
また、上述の実施形態の中で示した処理手順に示された指示は、ソフトウェアであるプログラムに基づいて実行されることが可能である。汎用の計算機システムが、このプログラムを予め記憶しておき、このプログラムを読み込むことにより、上述した情報処理装置による効果と同様な効果を得ることも可能である。上述の実施形態で記述された指示は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク、ハードディスクなど)、光ディスク(CD−ROM、CD−R、CD−RW、DVD−ROM、DVD±R、DVD±RWなど)、半導体メモリ、又はこれに類する記録媒体に記録される。コンピュータまたは組み込みシステムが読み取り可能な記録媒体であれば、その記憶形式は何れの形態であってもよい。コンピュータは、この記録媒体からプログラムを読み込み、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させれば、上述した実施形態の情報処理装置と同様な動作を実現することができる。もちろん、コンピュータがプログラムを取得する場合又は読み込む場合はネットワークを通じて取得又は読み込んでもよい。
また、記録媒体からコンピュータや組み込みシステムにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワーク等のMW(ミドルウェア)等が本実施形態を実現するための各処理の一部を実行してもよい。
さらに、本願発明における記録媒体は、コンピュータあるいは組み込みシステムと独立した媒体に限らず、LANやインターネット等により伝達されたプログラムをダウンロードして記憶または一時記憶した記録媒体も含まれる。
また、記録媒体は1つに限られず、複数の媒体から本実施形態における処理が実行される場合も、本発明における記録媒体に含まれ、媒体の構成は何れの構成であってもよい。
なお、本願発明におけるコンピュータまたは組み込みシステムは、記録媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するためのものであって、パソコン、マイコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であってもよい。
また、本願発明の実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の実施形態における機能を実現することが可能な機器、装置を総称している。
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
100・・・情報処理装置、101・・・スクリプトストレージ部、102・・・スクリプト解析部、103・・・コンテンツ取得部、104・・・代替コンテンツ検索部、105・・・代替コンテンツ取得部、106・・・スクリプトフラグチェック部、107・・・代替スクリプト検索部、108・・・代替スクリプト取得部、109・・・フラグ格納部、110・・・スクリプト変更部、111・・・コンテンツキャッシュ部、150・・・コンテンツ提供者A、151・・・コンテンツ提供者B、152・・・代替コンテンツ提供者、153・・・照合情報保持サーバ、154・・・代替スクリプト提供サーバ、200、301、302、303、304・・・スクリプト、210・・・プレイリスト、211・・・子ノードスクリプトへのリンクと制御情報、212・・・コンテンツのリンクと制御情報、220・・・メタデータ、221・・・スクリプト自身のメタデータ、222・・・プレイリスト中の子ノードスクリプトおよびコンテンツのメタデータ。

Claims (16)

  1. コンテンツへのリンクまたは他のスクリプトへのリンクにより木構造を構成するスクリプトであって、子ノードである子ノードスクリプトの取得に失敗した場合に該子ノードスクリプトの代替となる代替子ノードスクリプトを検索するか否かを示す第1スクリプト制御情報、および、該子ノードスクリプトの木構造上1つ上のノードの親ノードスクリプトの代替である第1代替親ノードスクリプトを検索するか否かを示す第2スクリプト制御情報を含む、該子ノードスクリプトへのリンクを示す第1子ノードスクリプトと、
    コンテンツの取得に失敗した場合に代替となる代替コンテンツを検索するか否かを示す第1コンテンツ制御情報、および、該コンテンツの木構造上1つ上のノードの親ノードスクリプトの代替である第2代替親ノードスクリプトを検索するか否かを示す第2コンテンツ制御情報を含む、該コンテンツへのリンクを示す第1コンテンツと、を使用する情報処理装置であって、
    前記木構造を構成するスクリプトを複数格納する第1格納手段と、
    前記第1格納手段が格納している複数のスクリプトの中から1つのスクリプトを親ノードスクリプトとして選択し、該親ノードスクリプトの子ノードの1つであり子ノードスクリプトへのリンクである第2子ノードスクリプトに含まれる、第1スクリプト制御情報および第2スクリプト制御情報を参照してそれぞれ検索するか否かを解析し、該親ノードスクリプトの子ノードの1つでありコンテンツへのリンクである第2コンテンツに含まれる、第1コンテンツ制御情報および第2コンテンツ制御情報を参照してそれぞれ検索するか否かを解析し、前記第2子ノードスクリプトに示されているリンクにある第3子ノードスクリプトがあれば取得して、取得した第3子ノードスクリプトについてさらに解析をおこなうスクリプト解析手段と、
    前記第2コンテンツに示されているリンクにある第3コンテンツがあれば取得するコンテンツ取得手段と、
    前記第3コンテンツの取得に失敗して、前記第2コンテンツの第1コンテンツ制御情報が代替コンテンツを検索することを示すと解析した場合は該代替コンテンツを検索する代替コンテンツ検索手段と、
    前記第3子ノードスクリプトの取得に失敗して、前記第2子ノードスクリプトの第1スクリプト制御情報が代替子ノードスクリプトを検索することを示すと解析した場合は該代替子ノードスクリプトを検索し、前記第2コンテンツの第2コンテンツ制御情報および前記第2子ノードスクリプトの第2スクリプト制御情報のいずれか一方が代替親ノードスクリプトを検索することを示す場合は代替親ノードスクリプトを検索する代替スクリプト検索手段と、
    代替コンテンツが見つかった場合は該代替コンテンツを取得する代替コンテンツ取得手段と、
    代替子ノードスクリプトおよび代替親ノードスクリプトが見つかった場合は、それぞれ該代替子ノードスクリプトおよび該代替親ノードスクリプトを取得する代替スクリプト取得手段と、
    前記代替コンテンツの保存場所を示す第1代替コンテンツを前記第2コンテンツに反映するか、代替子ノードスクリプトへのリンクを示す第1代替子ノードスクリプトを前記第2子ノードスクリプトに反映するか、および、代替親ノードスクリプトを前記親ノードスクリプトに反映するか、の少なくとも1つを変更した変更スクリプトを得る変更手段と、を具備することを特徴とする情報処理装置。
  2. 前記親ノードスクリプトは、前記コンテンツおよび前記子ノードスクリプトの少なくとも1つから構成される親ノードであって、該コンテンツおよび該子ノードスクリプトの木構造上1つ上の親ノードであることを特徴とする請求項1に記載の情報処理装置。
  3. 第1コンテンツサーバおよび該第1コンテンツサーバとは含むコンテンツが異なる第2コンテンツサーバ、スクリプトサーバ、外部サーバと接続している情報処理装置であって、
    コンテンツキャッシュをさらに具備し、
    前記コンテンツ取得手段は、前記第3コンテンツを前記第1コンテンツサーバから取得し、
    前記スクリプト解析手段は、前記第3子ノードスクリプトを前記第1格納手段から取得し、
    前記代替コンテンツ検索手段は、前記代替コンテンツを前記外部サーバおよび前記コンテンツキャッシュから検索し、
    前記代替スクリプト検索手段は、前記代替子ノードスクリプトおよび前記代替親ノードスクリプトを該外部サーバおよび前記第1格納手段から検索し、
    前記代替コンテンツ取得手段は、前記代替コンテンツを前記第2コンテンツサーバから取得し、
    前記代替スクリプト取得手段は、前記代替子ノードスクリプトおよび前記代替親ノードスクリプトをそれぞれ前記スクリプトサーバおよび前記第1格納手段から取得することを特徴とする請求項1または請求項2に記載の情報処理装置。
  4. 前記スクリプト解析手段は、スクリプト内に新たなスクリプトが含まれる場合は該新たなスクリプトがさらに新たなスクリプトを含むか否かを解析する第1手順と、スクリプト内に新たなスクリプトを含まない場合は1つ上の親ノードであるスクリプトに戻り、該スクリプト内にさらに新たなスクリプトを含むか否かを解析する第2手順とを有し、
    前記第1手順と前記第2手順を前記第3子ノードスクリプトに適用することを特徴とする請求項1または請求項3のいずれか1項に記載の情報処理装置。
  5. 前記第3コンテンツおよび前記第3子ノードスクリプトのそれぞれの取得に成功したか否かを示す複数の第1フラグと、前記第3コンテンツおよび前記第3子ノードスクリプトのそれぞれの代替が少なくとも1つ以上あったか否かを示す複数の第2フラグと、前記第2コンテンツの第2コンテンツ制御情報および前記第2子ノードスクリプトの第2スクリプト制御情報のいずれかにより前記親ノードスクリプトそのものの代替をおこなうかを示す複数の第3フラグとを格納する第2格納手段をさらに具備し、
    前記代替スクリプト検索手段は、前記第3コンテンツおよび前記第3子ノードスクリプトのいずれか1つが前記第3フラグを満たす場合は、前記親ノードスクリプトの代替親ノードスクリプトを検索することを特徴とする請求項4に記載の情報処理装置。
  6. 前記変更手段は、前記変更スクリプトを前記第1格納手段へ格納することを特徴とする請求項1から請求項4のいずれか1項に記載の情報処理装置。
  7. 前記第3コンテンツの取得に失敗することは、前記第1コンテンツサーバが一時的または恒久的に該第3コンテンツを提供しないか、該第3コンテンツの利用条件が変更され前記コンテンツの保存場所にある該第3コンテンツを利用できないかであることを特徴とする請求項1から請求項6のいずれか1項に記載の情報処理装置。
  8. コンテンツへのリンクまたは他のスクリプトへのリンクにより木構造を構成するスクリプトであって、子ノードである子ノードスクリプトの取得に失敗した場合に該子ノードスクリプトの代替となる代替子ノードスクリプトを検索するか否かを示す第1スクリプト制御情報、および、該子ノードスクリプトの木構造上1つ上のノードの親ノードスクリプトの代替である第1代替親ノードスクリプトを検索するか否かを示す第2スクリプト制御情報を含む、該子ノードスクリプトへのリンクを示す第1子ノードスクリプトと、
    コンテンツの取得に失敗した場合に代替となる代替コンテンツを検索するか否かを示す第1コンテンツ制御情報、および、該コンテンツの木構造上1つ上のノードの親ノードスクリプトの代替である第2代替親ノードスクリプトを検索するか否かを示す第2コンテンツ制御情報を含む、該コンテンツへのリンクを示す第1コンテンツと、を使用する情報処理方法であって、
    前記木構造を構成するスクリプトを複数格納する第1格納手段を用意し、
    前記第1格納手段が格納している複数のスクリプトの中から1つのスクリプトを親ノードスクリプトとして選択し、該親ノードスクリプトの子ノードの1つであり子ノードスクリプトへのリンクである第2子ノードスクリプトに含まれる、第1スクリプト制御情報および第2スクリプト制御情報を参照してそれぞれ検索するか否かを解析し、該親ノードスクリプトの子ノードの1つでありコンテンツへのリンクである第2コンテンツに含まれる、第1コンテンツ制御情報および第2コンテンツ制御情報を参照してそれぞれ検索するか否かを解析し、前記第2子ノードスクリプトに示されているリンクにある第3子ノードスクリプトがあれば取得して、取得した第3子ノードスクリプトについてさらに解析し、 前記第2コンテンツに示されているリンクにある第3コンテンツがあれば取得し、
    前記第3コンテンツの取得に失敗して、前記第2コンテンツの第1コンテンツ制御情報が代替コンテンツを検索することを示すと解析した場合は該代替コンテンツを検索し、 前記第3子ノードスクリプトの取得に失敗して、前記第2子ノードスクリプトの第1スクリプト制御情報が代替子ノードスクリプトを検索することを示すと解析した場合は該代替子ノードスクリプトを検索し、前記第2コンテンツの第2コンテンツ制御情報および前記第2子ノードスクリプトの第2スクリプト制御情報のいずれか一方が代替親ノードスクリプトを検索することを示す場合は代替親ノードスクリプトを検索し、
    代替コンテンツが見つかった場合は該代替コンテンツを取得し、
    代替子ノードスクリプトおよび代替親ノードスクリプトが見つかった場合は、それぞれ該代替子ノードスクリプトおよび該代替親ノードスクリプトを取得し、
    前記代替コンテンツの保存場所を示す第1代替コンテンツを前記第2コンテンツに反映するか、代替子ノードスクリプトへのリンクを示す第1代替子ノードスクリプトを前記第2子ノードスクリプトに反映するか、および、代替親ノードスクリプトを前記親ノードスクリプトに反映するか、の少なくとも1つを変更した変更スクリプトを得ることを特徴とする情報処理方法。
  9. コンテンツへのリンクまたは他のスクリプトへのリンクにより木構造を構成するスクリプトであって、子ノードである子ノードスクリプトの取得に失敗した場合に該子ノードスクリプトの代替となる代替子ノードスクリプトを検索するか否かを示す第1スクリプト制御情報、および、該子ノードスクリプトの木構造上1つ上のノードの親ノードスクリプトの代替である第1代替親ノードスクリプトを検索するか否かを示す第2スクリプト制御情報を含む、該子ノードスクリプトへのリンクを示す第1子ノードスクリプトと、
    コンテンツの取得に失敗した場合に代替となる代替コンテンツを検索するか否かを示す第1コンテンツ制御情報、および、該コンテンツの木構造上1つ上のノードの親ノードスクリプトの代替である第2代替親ノードスクリプトを検索するか否かを示す第2コンテンツ制御情報を含む、該コンテンツへのリンクを示す第1コンテンツと、を使用する情報処理プログラムであって、
    コンピュータを、
    前記木構造を構成するスクリプトを複数格納する第1格納手段と、
    前記第1格納手段が格納している複数のスクリプトの中から1つのスクリプトを親ノードスクリプトとして選択し、該親ノードスクリプトの子ノードの1つであり子ノードスクリプトへのリンクである第2子ノードスクリプトに含まれる、第1スクリプト制御情報および第2スクリプト制御情報を参照してそれぞれ検索するか否かを解析し、該親ノードスクリプトの子ノードの1つでありコンテンツへのリンクである第2コンテンツに含まれる、第1コンテンツ制御情報および第2コンテンツ制御情報を参照してそれぞれ検索するか否かを解析し、前記第2子ノードスクリプトに示されているリンクにある第3子ノードスクリプトがあれば取得して、取得した第3子ノードスクリプトについてさらに解析をおこなうスクリプト解析手段と、
    前記第2コンテンツに示されているリンクにある第3コンテンツがあれば取得するコンテンツ取得手段と、
    前記第3コンテンツの取得に失敗して、前記第2コンテンツの第1コンテンツ制御情報が代替コンテンツを検索することを示すと解析した場合は該代替コンテンツを検索する代替コンテンツ検索手段と、
    前記第3子ノードスクリプトの取得に失敗して、前記第2子ノードスクリプトの第1スクリプト制御情報が代替子ノードスクリプトを検索することを示すと解析した場合は該代替子ノードスクリプトを検索し、前記第2コンテンツの第2コンテンツ制御情報および前記第2子ノードスクリプトの第2スクリプト制御情報のいずれか一方が代替親ノードスクリプトを検索することを示す場合は代替親ノードスクリプトを検索する代替スクリプト検索手段と、
    代替コンテンツが見つかった場合は該代替コンテンツを取得する代替コンテンツ取得手段と、
    代替子ノードスクリプトおよび代替親ノードスクリプトが見つかった場合は、それぞれ該代替子ノードスクリプトおよび該代替親ノードスクリプトを取得する代替スクリプト取得手段と、
    前記代替コンテンツの保存場所を示す第1代替コンテンツを前記第2コンテンツに反映するか、代替子ノードスクリプトへのリンクを示す第1代替子ノードスクリプトを前記第2子ノードスクリプトに反映するか、および、代替親ノードスクリプトを前記親ノードスクリプトに反映するか、の少なくとも1つを変更した変更スクリプトを得る変更手段として機能させるための情報処理プログラム。
  10. 複数のコンテンツをスクリプトに従って組み合わせて出力する情報処理装置であって、
    いずれかのコンテンツの取得に失敗した場合、代替コンテンツを取得する取得手段と、
    前記代替コンテンツを取得した場合、前記スクリプトを書き換える書き換え手段と、
    を具備する情報処理装置。
  11. 前記スクリプトは木構造を有する複数のスクリプトからなり、各スクリプトはプレイリストを具備し、
    前記プレイリストは子スクリプトへのリンク情報と、コンテンツへのリンク情報とを具備する請求項10記載の情報処理装置。
  12. 前記書き換え手段は、前記子スクリプトあるいはコンテンツの取得に失敗した場合、前記子スクリプトへのリンク情報あるいはコンテンツへのリンク情報を書き換える請求項11記載の情報処理装置。
  13. 前記子スクリプトへのリンク情報は前記子スクリプトの取得に失敗した場合に代替スクリプトの取得を行うか否かを示す第1制御情報を具備し、
    前記コンテンツへのリンク情報は前記コンテンツの取得に失敗した場合に代替コンテンツの取得を行うか否かを示す第2制御情報を具備し、
    前記取得手段は前記第1制御情報あるいは第2制御情報に基づいて代替スクリプトあるいは代替コンテンツの取得を行う請求項11記載の情報処理装置。
  14. 前記書き換え手段は、代替スクリプトの取得を行った場合は前記子スクリプトへのリンク情報を代替スクリプトに基づいて書き換え、代替スクリプトの取得を行わなかった場合は前記子スクリプトへのリンク情報を削除し、代替コンテンツの取得を行った場合は前記コンテンツへのリンク情報を代替コンテンツに基づいて書き換え、代替コンテンツの取得を行わなかった場合は前記コンテンツへのリンク情報を削除する請求項13記載の情報処理装置。
  15. 複数のコンテンツをスクリプトに従って組み合わせて出力する情報処理方法であって、
    いずれかのコンテンツの取得に失敗した場合、代替コンテンツを取得することと、
    前記代替コンテンツを取得した場合、前記スクリプトを書き換えることと、
    を具備する情報処理方法。
  16. 複数のコンテンツをスクリプトに従って組み合わせて出力する情報処理プログラムであって、
    コンピュータを、
    いずれかのコンテンツの取得に失敗した場合、代替コンテンツを取得する手段と、
    前記代替コンテンツを取得した場合、前記スクリプトを書き換える手段と、
    して機能させるための情報処理プログラム。
JP2011174878A 2011-08-10 2011-08-10 情報処理装置、方法及びプログラム Expired - Fee Related JP5175958B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011174878A JP5175958B2 (ja) 2011-08-10 2011-08-10 情報処理装置、方法及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011174878A JP5175958B2 (ja) 2011-08-10 2011-08-10 情報処理装置、方法及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2009019677A Division JP2010176489A (ja) 2009-01-30 2009-01-30 情報処理装置、方法及びプログラム

Publications (2)

Publication Number Publication Date
JP2012003777A true JP2012003777A (ja) 2012-01-05
JP5175958B2 JP5175958B2 (ja) 2013-04-03

Family

ID=45535605

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011174878A Expired - Fee Related JP5175958B2 (ja) 2011-08-10 2011-08-10 情報処理装置、方法及びプログラム

Country Status (1)

Country Link
JP (1) JP5175958B2 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005260554A (ja) * 2004-03-11 2005-09-22 Nissan Motor Co Ltd 情報提供装置
JP2006301788A (ja) * 2005-04-18 2006-11-02 Kyocera Corp 携帯端末、携帯端末の制御方法及びプログラム
JP2008033925A (ja) * 2007-07-04 2008-02-14 Sharp Corp コンテンツ再生装置、コンテンツ再生方法、コンテンツ再生システム、コンテンツデータ送信装置、コンテンツデータ送信方法、プログラム、及び、記録媒体
JP2008152259A (ja) * 2006-12-14 2008-07-03 Qnx Software Systems Gmbh & Co Kg 実質的に同様のメディアコンテンツを有する複数のファイルから再生用のメディアファイルを選択するシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005260554A (ja) * 2004-03-11 2005-09-22 Nissan Motor Co Ltd 情報提供装置
JP2006301788A (ja) * 2005-04-18 2006-11-02 Kyocera Corp 携帯端末、携帯端末の制御方法及びプログラム
JP2008152259A (ja) * 2006-12-14 2008-07-03 Qnx Software Systems Gmbh & Co Kg 実質的に同様のメディアコンテンツを有する複数のファイルから再生用のメディアファイルを選択するシステム
JP2008033925A (ja) * 2007-07-04 2008-02-14 Sharp Corp コンテンツ再生装置、コンテンツ再生方法、コンテンツ再生システム、コンテンツデータ送信装置、コンテンツデータ送信方法、プログラム、及び、記録媒体

Also Published As

Publication number Publication date
JP5175958B2 (ja) 2013-04-03

Similar Documents

Publication Publication Date Title
US9923962B2 (en) Techniques and systems for supporting podcasting
JP4445509B2 (ja) 構造化文書検索システム及びプログラム
JP5147947B2 (ja) クエリ別検索コレクション生成方法およびシステム
KR101557294B1 (ko) 편집 거리 및 문서 정보를 이용한 검색 결과 랭킹
US8972458B2 (en) Systems and methods for comments aggregation and carryover in word pages
US20060031751A1 (en) Method for creating editable web sites with increased performance & stability
JP2008204444A (ja) データ処理装置、データ処理方法及び検索装置
US8244719B2 (en) Computer method and apparatus providing social preview in tag selection
JP4354441B2 (ja) 映像データ管理装置及び方法及びプログラム
CN100498771C (zh) 用于管理结构化文件的系统和方法
US20090019364A1 (en) Method and apparatus for generating electronic content guide
RU2733482C2 (ru) Способ и система для обновления базы данных поискового индекса
CN109299352B (zh) 搜索引擎中网站数据的更新方法、装置和搜索引擎
JP2010176489A (ja) 情報処理装置、方法及びプログラム
KR20090025607A (ko) 컨텐트의 메타데이터 업데이트 방법 및 그 장치
JP5210970B2 (ja) 共通クエリグラフパターン生成方法、共通クエリグラフパターン生成装置及び共通クエリグラフパターン生成プログラム
JP5175958B2 (ja) 情報処理装置、方法及びプログラム
US7991741B2 (en) System and method for synchronizing data record with web document in a content management system
JP2002197100A (ja) 検索サービスシステムと方法及び記録媒体並びに情報仲介方法
JP4469818B2 (ja) データ管理装置、データプログラム及びデータ管理方法
KR100705413B1 (ko) 웹 페이지 지정 크롤링 가능한 웹 서버 기반의 데스크톱검색 시스템 및 방법
JP2006185059A (ja) コンテンツ管理装置
JP2002082936A (ja) コンテンツデータ表示装置とコンテンツデータ表示システム
JP4219125B2 (ja) 全文検索装置、全文検索方法、プログラム、及び記録媒体
JP4393498B2 (ja) 構造化文書管理システム及びプログラム

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120904

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121102

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121211

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130107

R151 Written notification of patent or utility model registration

Ref document number: 5175958

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160111

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees