(57)【要約】【課題】展開データが既にキャッシュメモリに展開されているリソースファイルに対する取得処理や展開処理を省略して、処理手順や処理時間を削減することができるようにする。【解決手段】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているＪＰＥＧリソースファイルのデコード済み静止画データが既に静止画用内部キャッシュ２４ａに展開されているか否かを確認し、そのＪＰＥＧリソースファイルのデコード済み静止画データが未だ展開されていない場合に限り、データ放送サーバ１からＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルに対する展開処理を実施する。【選択図】図１
2010130637.tif 000002
【特許請求の範囲】
【請求項１】
データ放送サーバからデータ放送コンテンツの文書ファイルを受信する文書ファイル受信手段と、上記データ放送サーバから上記文書ファイルに記述されているリソースファイルを取得し、上記リソースファイルに対する展開処理を実施して、上記リソースファイルの展開データをキャッシュメモリに展開するデータ展開手段と、上記キャッシュメモリに展開されている展開データを再生するデータ再生手段とを備えたデータ放送受信機において、上記データ展開手段は、上記文書ファイル受信手段により他の文書ファイルが受信された場合、他の文書ファイルに記述されているリソースファイルの展開データが既に上記キャッシュメモリに展開されているか否かを確認し、上記リソースファイルの展開データが未だ展開されていない場合に限り、上記データ放送サーバから上記リソースファイルを取得して、上記リソースファイルに対する展開処理を実施し、上記リソースファイルの展開データをキャッシュメモリに展開することを特徴とするデータ放送受信機。
【請求項２】
データ展開手段は、リソースファイルが静止画のリソースファイルである場合、展開データとしてデコード済みの静止画データをキャッシュメモリに展開することを特徴とする請求項１記載のデータ放送受信機。
【請求項３】
データ展開手段は、リソースファイルがグラフィックスのリソースファイルである場合、展開データとしてデコード済みのグラフィックスデータをキャッシュメモリに展開することを特徴とする請求項１記載のデータ放送受信機。
【請求項４】
データ放送コンテンツの文書ファイルを送信するデータ放送サーバと、上記データ放送サーバから文書ファイルを受信するとともに、上記データ放送サーバから上記文書ファイルに記述されているリソースファイルを取得し、上記リソースファイルに対する展開処理を実施して、上記リソースファイルの展開データをキャッシュメモリに展開するデータ放送受信機とを備えたデータ放送システムにおいて、
上記データ放送サーバは、同一のリソースファイルの記述を含む複数の文書ファイルを送信する場合、上記リソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続ける指令を最初に送信する文書ファイルに記述し、
上記データ放送受信機は、最初に送信される文書ファイルに記述されている指令にしたがって、上記データ放送サーバからリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続け、次に送信される文書ファイルに記述されているリソースファイルについては取得処理を実施せずに、上記キャッシュメモリに保持されているリソースファイルを利用することを特徴とするデータ放送システム。
【請求項５】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルが静止画のリソースファイルである場合、データ放送サーバから静止画のリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続けることを特徴とする請求項４記載のデータ放送システム。
【請求項６】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがグラフィックスのリソースファイルである場合、データ放送サーバからグラフィックスのリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続けることを特徴とする請求項４記載のデータ放送システム。
【請求項７】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがスクリプト情報のリソースファイルである場合、データ放送サーバからスクリプト情報のリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続けることを特徴とする請求項４記載のデータ放送システム。
【請求項８】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがスタイル情報のリソースファイルである場合、データ放送サーバからスタイル情報のリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続けることを特徴とする請求項４記載のデータ放送システム。
【請求項９】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがデータ放送文書のリソースファイルである場合、データ放送サーバからデータ放送文書のリソースファイルを取得して、上記リソースファイルをキャッシュメモリで保持し続けることを特徴とする請求項４記載のデータ放送システム。
【請求項１０】
データ放送コンテンツの文書ファイルを送信するデータ放送サーバと、上記データ放送サーバから文書ファイルを受信するとともに、上記データ放送サーバから上記文書ファイルに記述されているリソースファイルを取得し、上記リソースファイルに対する展開処理を実施して、上記リソースファイルの展開データをキャッシュメモリに展開するデータ放送受信機とを備えたデータ放送システムにおいて、
上記データ放送サーバは、同一のリソースファイルの記述を含む複数の文書ファイルを送信する場合、上記リソースファイルを取得して、上記リソースファイルの展開データをキャッシュメモリで保持し続ける指令を最初に送信する文書ファイルに記述し、
上記データ放送受信機は、最初に送信される文書ファイルに記述されている指令にしたがって、上記データ放送サーバからリソースファイルを取得して、上記リソースファイルの展開データをキャッシュメモリで保持し続け、次に送信される文書ファイルに記述されているリソースファイルについては取得処理を実施せずに、上記キャッシュメモリで保持されているリソースファイルの展開データを利用することを特徴とするデータ放送システム。
【請求項１１】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルが静止画のリソースファイルである場合、データ放送サーバから静止画のリソースファイルを取得して、上記リソースファイルの展開データとしてデコードデータをキャッシュメモリで保持し続けることを特徴とする請求項１０記載のデータ放送システム。
【請求項１２】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがグラフィックスのリソースファイルである場合、データ放送サーバからグラフィックスのリソースファイルを取得して、上記リソースファイルの展開データとしてデコードデータをキャッシュメモリで保持し続けることを特徴とする請求項１０記載のデータ放送システム。
【請求項１３】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがスクリプト情報のリソースファイルである場合、データ放送サーバからスクリプト情報のリソースファイルを取得して、上記リソースファイルの展開データとしてブラウザ内部処理形式スクリプトデータをキャッシュメモリで保持し続けることを特徴とする請求項１０記載のデータ放送システム。
【請求項１４】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがスタイル情報のリソースファイルである場合、データ放送サーバからスタイル情報のリソースファイルを取得して、上記リソースファイルの展開データとしてブラウザ内部処理形式スタイル情報データをキャッシュメモリで保持し続けることを特徴とする請求項１０記載のデータ放送システム。
【請求項１５】
データ放送受信機は、最初に送信される文書ファイルに記述されているリソースファイルがデータ放送文書のリソースファイルである場合、データ放送サーバからデータ放送文書のリソースファイルを取得して、上記リソースファイルの展開データとしてブラウザ内部処理形式データ放送文書データをキャッシュメモリで保持し続けることを特徴とする請求項１０記載のデータ放送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データ放送サーバからデータ放送コンテンツを受信するデータ放送受信機と、そのデータ放送サーバとデータ放送受信機からなるデータ放送システムとに関するものである。
【背景技術】
【０００２】
以下の特許文献１及び非特許文献１に開示されているデータ放送受信機では、データ放送サーバからデータ放送コンテンツの文書ファイルを受信すると、そのデータ放送サーバから文書ファイルに記述されているリソースファイルを取得するようにしている。
また、上記のデータ放送受信機は文書ファイルに記述されているリソースファイルを取得すると、そのリソースファイルに対する展開処理を実施して、そのリソースファイルの展開データを一次的に利用可能なＥＣＭＡスクリプト作業用メモリに展開するようにしている。
【０００３】
【特許文献１】特開２００３−２８８２６１号公報（第８頁、図１、図５）
【非特許文献１】（社）電波産業会  ＡＲＩＢ  ＳＴＤ−Ｂ２４  ５．１版（第二分冊）（２/２）  付属１、第１４〜１８頁
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のデータ放送受信機は以上のように構成されているので、リソースファイルの展開データがＥＣＭＡスクリプト作業用メモリに展開されるが、ＥＣＭＡスクリプト作業用メモリにおける展開データの格納は一次的なものである。このため、データ放送サーバから他の文書ファイルを受信したとき、他の文書ファイルに記述されているリソースファイルが、先に受信している文書ファイルに記述されているリソースファイルと同一であっても、再度、データ放送サーバから当該リソースファイルを取得して、そのリソースファイルに対する展開処理を実施することで、そのリソースファイルの展開データをＥＣＭＡスクリプト作業用メモリに展開する必要があり、多くの処理手順や処理時間を要するなどの課題あった。
【０００５】
この発明は上記のような課題を解決するためになされたもので、展開データが既にキャッシュメモリに展開されているリソースファイルに対する取得処理や展開処理を省略して、処理手順や処理時間を削減することができるデータ放送受信機及びデータ放送システムを得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係るデータ放送受信機は、データ展開手段が、文書ファイル受信手段により他の文書ファイルが受信された場合、他の文書ファイルに記述されているリソースファイルの展開データが既にキャッシュメモリに展開されているか否かを確認し、そのリソースファイルの展開データが未だ展開されていない場合に限り、データ放送サーバからリソースファイルを取得して、そのリソースファイルに対する展開処理を実施し、そのリソースファイルの展開データをキャッシュメモリに展開するようにしたものである。
【発明の効果】
【０００７】
この発明によれば、データ展開手段が、文書ファイル受信手段により他の文書ファイルが受信された場合、他の文書ファイルに記述されているリソースファイルの展開データが既にキャッシュメモリに展開されているか否かを確認し、そのリソースファイルの展開データが未だ展開されていない場合に限り、データ放送サーバからリソースファイルを取得して、そのリソースファイルに対する展開処理を実施し、そのリソースファイルの展開データをキャッシュメモリに展開するように構成したので、展開データが既にキャッシュメモリに展開されているリソースファイルに対する取得処理や展開処理を省略することができるようになり、その結果、処理手順や処理時間を削減することができる効果がある。
【発明を実施するための最良の形態】
【０００８】
実施の形態１．
図１はこの発明の実施の形態１によるデータ放送システムを示す構成図である。
図１において、データ放送サーバ１はデータ放送コンテンツを示すＸＭＬ形式のデータ放送文書ファイルであるＢＭＬ文書ファイルを送信するとともに、そのＢＭＬ文書ファイルに記述されているリソースファイル（例えば、静止画のリソースファイルであるＪＰＥＧリソースファイルなど）を送信する装置である。
データ放送受信機３は例えばインターネット２などのネットワークを介してデータ放送サーバ１と接続されており、データ放送サーバ１からＢＭＬ文書ファイルを受信するとともに、データ放送サーバ１からＢＭＬ文書ファイルに記述されているリソースファイルを取得し、そのリソースファイルに対する展開処理を実施して、そのリソースファイルの展開データをキャッシュメモリに展開する装置である。
リモコン４は視聴者がデータ放送受信機３を利用する際に操作するマンマシンインタフェースである。
【０００９】
データ放送受信機３の赤外線インタフェース１１はリモコン４から視聴者の操作内容を示す赤外線信号を受信する処理を実施する。
レジデント処理部１２はレジデントソフトウェアを実行する処理部であり、例えば、赤外線インタフェース１１がリモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、データ放送ブラウザ１３を起動するなどの処理を実施する。
データ放送ブラウザ１３はレジデント処理部１２から起動指令を受けると、予め固定的に与えられているＩＰデータ放送サービスのトップＵＲＩで起動し、例えば、ＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与えて、ＢＭＬ文書ファイルを取得するなどの処理を実施する。
【００１０】
伝送プロトコル部１４はデータ放送ブラウザ１３の指示の下、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、その応答として、データ放送サーバ１からＢＭＬ文書ファイルを受信する処理を実施する。
また、伝送プロトコル部１４はデータ放送ブラウザ１３の指示の下、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、その応答として、データ放送サーバ１からＢＭＬ文書ファイルに記述されているリソースファイルを受信する処理も実施する。
なお、伝送プロトコル部１４及びネットワークインタフェース１５は文書ファイル受信手段の一部を構成している。
また、伝送プロトコル部１４及びネットワークインタフェース１５はデータ展開手段の一部も構成している。
【００１１】
モニタ１６は例えばデータ放送ブラウザ１３によるデコード済み静止画データにしたがって静止画などを表示する表示器である。
フレーム合成処理部１７は映像を構成しているフレーム間の合成処理などを実施する。
装置管理部１８はデータ放送受信機３を構成している各処理部の動作を制御する処理を実施する。
【００１２】
図２はこの発明の実施の形態１によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
図２において、リソースキャッシュメモリ２１は伝送プロトコル部１４により受信されたＢＭＬ文書ファイルやリソースファイルを格納するメモリである。
文書パーザ２２はリソースキャッシュメモリ２１に格納されているＢＭＬ文書ファイルを解析して、各種の処理を実施する。例えば、ＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える処理や、そのＢＭＬ文書ファイルに記述されているリソースファイルを取得する指示を伝送プロトコル部１４に与えるなどの処理を実施する。
なお、文書パーザ２２は文書ファイル受信手段及びデータ展開手段の一部を構成している。
【００１３】
モノメディアデコーダ２３はリソースキャッシュメモリ２１に格納されているリソースファイルが静止画のリソースファイルであれば、そのリソースファイルに対する展開処理を実施して、そのリソースファイルの展開データであるデコード済み静止画データを内部データ用メモリ２４内の静止画用内部キャッシュ２４ａに展開する処理を実施する。
なお、モノメディアデコーダ２３はデータ展開手段の一部を構成している。
【００１４】
内部データ用メモリ２４はデコード済み静止画データを展開する静止画用内部キャッシュ２４ａを有し、そのデコード済み静止画データや、各種の内部データを格納するメモリである。
モノメディア管理部２５は静止画用内部キャッシュ２４ａに展開されているデコード済み静止画データの格納先を示すアドレス情報を含む静止画の描画指令をレイアウト管理部２６に出力する処理を実施する。
レイアウト管理部２６はモノメディア管理部２５から静止画の描画指令を受けると、静止画用内部キャッシュ２４ａに展開されているデコード済み静止画データを取得し、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７から出力されるスタイル情報が示す描画位置・描画サイズで、静止画をモニタ１６に描画する処理を実施する。
なお、モノメディア管理部２５及びレイアウト管理部２６はデータ再生手段を構成している。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は文書パーザ２２から出力されたスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する処理などを実施する。
【００１５】
ＥＣＭＡスクリプト実行系３１は文書パーザ２２からスクリプトデータ（スクリプト情報）を受けると、そのスクリプトデータをＥＣＭＡスクリプト作業用メモリ３２に格納するとともに、そのスクリプトデータを解析して、その解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する処理を実施する。
ＥＣＭＡスクリプト作業用メモリ３２はスクリプトデータや、スクリプトデータの解析情報などを格納するメモリである。
ブラウザ擬似オブジェクト処理部３３は例えばクリック入力（画面切替操作）があると、その入力イベントをレジデント処理部１２に通知する処理を実施する。
組込みオブジェクト処理部３４は組み込まれているオブジェクトの処理を実施する。
【００１６】
次に動作について説明する。
視聴者がＩＰデータ放送サービスを視聴するために、リモコン４のＩＰデータ放送サービス開始ボタンを押下すると、リモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号が送信される。
これにより、データ放送受信機３の赤外線インタフェース１１は、リモコン４から送信された赤外線信号を受信する。
【００１７】
レジデント処理部１２は、赤外線インタフェース１１がＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、ＩＰデータ放送サービスを開始するため、データ放送ブラウザ１３を起動する。
データ放送ブラウザ１３の文書パーザ２２は、レジデント処理部１２によって起動されると、データ放送コンテンツのＢＭＬ文書ファイルの受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える。
【００１８】
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイルを取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイルを要求元のデータ放送受信機３に返信する。
【００１９】
この実施の形態１では、説明の便宜上、図３に示すＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）と図４に示すＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を返信するものとして説明する。
詳細は後述するが、この場合、最初にＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が示す文書が提示され、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、提示されている文書が、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が示す文書に遷移されるものとする。
ここでは、データ放送サーバ１がＢＭＬ文書ファイルを返信する例を説明するが、データ放送受信機３がＢＭＬ文書ファイル以外のデータ形式の文書ファイルを要求して、データ放送サーバ１からＢＭＬ文書ファイル以外のデータ形式の文書ファイルの返信を受けるようにしてもよい。
【００２０】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
ただし、文書パーザ２２がリソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出しても、リソースキャッシュメモリ２１には、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が開放されずに残っている。
【００２１】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータをＥＣＭＡスクリプト作業用メモリ３２に格納する。
また、ＥＣＭＡスクリプト実行系３１は、そのスクリプトデータを解析して、変数ｆｌｇを“０”にする。
そして、“ｏｎｃｌｉｃｋ（）；”という関数が含まれていることを確認すると、この関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【００２２】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データ（＜ｂｍｌ＞要素、＜ｈｅａｄ＞要素、＜ｂｏｄｙ＞要素）を上の行から順々に確認する。
即ち、＜ｂｍｌ＞要素  →  ＜ｈｅａｄ＞要素  →  ＜ｂｏｄｙ＞要素の順番で確認する。
文書パーザ２２は、＜ｂｏｄｙ＞要素の確認中、＜ｄｉｖ＞要素を読み込むと、当該要素のｉｄ属性が“ｂａｓｅｂｏｘ”であり、スタイル情報を記述するｓｔｙｌｅ属性が“ｗｉｄｔｈ：９６０ｐｘ；ｈｅｉｇｈｔ：５４０ｐｘ；”であることを確認し、ｉｄ属性が“ｂａｓｅｂｏｘ”のスタイル情報は、“ｗｉｄｔｈ：９６０ｐｘ；ｈｅｉｇｈｔ：５４０ｐｘ；”であることをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００２３】
次に、文書パーザ２２は、ｉｄ属性が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を確認し、そのｔｙｐｅ属性によって、モノメディアがＪＰＥＧリソースファイルであると判断し、ｄａｔａ属性の内容が当該ＪＰＥＧリソースファイルへのＵＲＩであると判断する。
文書パーザ２２は、モノメディアがＪＰＥＧリソースファイルであると判断すると、ＪＰＥＧリソースファイルの受信完了時の通知先をモノメディアデコーダ２３に設定し、上記のｉｄ情報“ｊ０”と上記ＵＲＩを指定するリソース取得指示を伝送プロトコル部１４に与える。
また、文書パーザ２２は、ｓｔｙｌｅ属性の内容とｉｄ情報“ｊ０”をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
【００２４】
伝送プロトコル部１４は、文書パーザ２２からリソース取得指示を受けると、ＢＭＬ文書ファイルを取得する場合と同様に、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルをデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納する。
また、伝送プロトコル部１４は、ｉｄ情報“ｊ０”、リソースキャッシュメモリ２１におけるＪＰＥＧリソースファイルの格納先アドレス及びＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”を含むＪＰＥＧリソースファイル受信完了通知をモノメディアデコーダ２３に出力する。
【００２５】
モノメディアデコーダ２３は、伝送プロトコル部１４からＪＰＥＧリソースファイル受信完了通知を受けると、その受信完了通知に含まれている格納先アドレスを参照して、リソースキャッシュメモリ２１からＪＰＥＧリソースファイルを読み出し、そのＪＰＥＧリソースファイルの展開処理を実施する。
ただし、モノメディアデコーダ２３がリソースキャッシュメモリ２１からＪＰＥＧリソースファイルを読み出しても、リソースキャッシュメモリ２１には、そのＪＰＥＧリソースファイルが開放されずに残っている。
【００２６】
モノメディアデコーダ２３は、ＪＰＥＧリソースファイルの展開処理を実施すると、ＪＰＥＧリソースファイルの展開データであるデコード済み静止画データを、ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”と一緒に静止画用内部キャッシュ２４ａに格納する。
また、モノメディアデコーダ２３は、ｉｄ情報“ｊ０”及び静止画用内部キャッシュ２４ａにおけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
モノメディア管理部２５は、モノメディアデコーダ２３からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ０”及び静止画用内部キャッシュ２４ａにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【００２７】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、静止画用内部キャッシュ２４ａからデコード済み静止画データを読み出し、その描画位置・描画サイズで、静止画をモニタ１６に描画する。
ただし、レイアウト管理部２６が静止画用内部キャッシュ２４ａからデコード済み静止画データを読み出しても、静止画用内部キャッシュ２４ａには、そのデコード済み静止画データが開放されずに残っている。
【００２８】
次に、文書パーザ２２は、ｉｄ属性が“ｐ１”の＜ｐ＞要素を確認して、ｏｎｃｌｉｃｋ属性が“ｏｎｃｌｉｃｋ（）”スクリプトであると判断し、ｉｄ情報“ｐ１”とｏｎｃｌｉｃｋ属性“ｏｎｃｌｉｃｋ（）”をＥＣＭＡスクリプト実行系３１に通知するとともに、ｉｄ情報“ｐ１”をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
次に、文書パーザ２２は、＞と＜の間に記述されている文字列「次ページを表示する」をｄａｔａ属性として取り出し、そのｄａｔａ属性を内部データ用メモリ２４に格納する。
文書パーザ２２は、＜ｐ＞要素のｄｅｔａ属性はテキストであると定義されているので、ｔｙｐｅ属性がｔｅｘｔであると判断し、ｉｄ情報“ｐ１”、ｔｙｐｅ属性“ｔｅｘｔ”及び内部データ用メモリ２４における当該文字列の格納先アドレスを含む文字描画指令をモノメディア管理部２５に通知する。
【００２９】
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７では、ｉｄ情報“ｐ１”を内部データ用メモリ２４に一時的に格納する。
ＥＣＭＡスクリプト実行系３１は、上述したクリック入力（画面切替操作）時におけるイベント設定指示をブラウザ擬似オブジェクト処理部３３に行う。また、ＥＣＭＡスクリプト作業用メモリ３２に格納されているスクリプトデータのうち、“ｏｎｃｌｉｃｋ()；”のＥＣＭＡスクリプトがクリック入力（画面切替操作）時に実行されるように、ＥＣＭＡスクリプト作業用メモリ３２上での関連付け情報を記憶する。
ブラウザ擬似オブジェクト処理部３３では、ＥＣＭＡスクリプト実行系３１からイベント設定指示を受けることで、クリック入力（画面切替操作）が行われたとき、イベント通知をレジデント処理部１２に出力するようになる。
これにより、レジデント処理部１２では、クリック入力（画面切替操作）が行われたとき、クリック入力が行われた旨を示す入力イベントをデータ放送ブラウザ１３に転送することが可能になる。
【００３０】
モノメディア管理部２５は、文書パーザ２２から文字描画指令を受けると、その文字描画指令に含まれているｔｙｐｅ属性が“ｔｅｘｔ”であることから、文字の描画指示であることを判断し、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その文字描画指令に含まれているｉｄ情報“ｐ１”に対応するスタイル情報を問い合わせることで、文字の描画位置・描画サイズ・フォント形式・文字サイズ・文字色などを確認する。
また、モノメディア管理部２５は、その文字描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４から文字列を読み出し、その文字列・フォント形式・文字サイズ・文字色を含む文字ビットマップ生成指令をレジデント処理部１２に出力する。
【００３１】
レジデント処理部１２は、モノメディア管理部２５から文字ビットマップ生成指令を受けると、その文字ビットマップ生成指令に含まれている文字列の文字ビットマップデータを生成し、その文字ビットマップデータをモノメディア管理部２５に出力する。
モノメディア管理部２５は、レジデント処理部１２から文字ビットマップデータを受けると、その文字ビットマップデータを内部データ用メモリ２４に格納する。
また、モノメディア管理部２５は、内部データ用メモリ２４における文字ビットマップデータの格納先アドレス及び描画位置・描画サイズを含む文字描画指令をレイアウト管理部２６に出力する。
【００３２】
レイアウト管理部２６は、モノメディア管理部２５から文字描画指令を受けると、その文字描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４から文字ビットマップデータを読み出し、その文字描画指令に含まれている描画位置・描画サイズで、文字をモニタ１６に描画する。
【００３３】
レジデント処理部１２は、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、クリック入力が行われた旨を示す入力イベントをデータ放送ブラウザ１３に転送する。
データ放送ブラウザ１３のブラウザ擬似オブジェクト処理部３３は、レジデント処理部１２から入力イベントを受けると、その入力イベントをＥＣＭＡスクリプト実行系３１に転送する。
ＥＣＭＡスクリプト実行系３１は、ブラウザ擬似オブジェクト処理部３３から入力イベントを受けると、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力（画面切替操作）であると判断し、“ｏｎｃｌｉｃｋ（）；”を実行する。
“ｏｎｃｌｉｃｋ（）；”が、
ｂｒｏｗｓｅｒ．ｌａｎｃｈＤｏｃｕｍｅｎｔ（“．／２ｎｄ．ｂｍｌ”，  “ｃｕｔ”）;
である旨がＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）に記述されているので、“．／２ｎｄ．ｂｍｌ”への文書遷移指示を文書パーザ２２に通知し、本スクリプト処理を終了する。
【００３４】
文書パーザ２２は、ＥＣＭＡスクリプト実行系３１から“．／２ｎｄ．ｂｍｌ”への文書遷移指示を受けると、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を取得する場合と同様に、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を伝送プロトコル部１４に与える。
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を要求元のデータ放送受信機３に返信する。
【００３５】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
ただし、文書パーザ２２がリソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出しても、リソースキャッシュメモリ２１には、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が開放されずに残っている。
【００３６】
文書パーザ２２は、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されている要素データ（＜ｂｍｌ＞要素、＜ｈｅａｄ＞要素、＜ｂｏｄｙ＞要素）を上の行から順々に確認する。
即ち、＜ｂｍｌ＞要素  →  ＜ｈｅａｄ＞要素  →  ＜ｂｏｄｙ＞要素の順番で確認する。
文書パーザ２２は、＜ｂｏｄｙ＞要素の確認中、＜ｄｉｖ＞要素を読み込むと、当該要素のｉｄ属性が“ｂａｓｅｂｏｘ”であり、スタイル情報を記述するｓｔｙｌｅ属性が“ｗｉｄｔｈ：９６０ｐｘ；ｈｅｉｇｈｔ：５４０ｐｘ；”であることを確認し、ｉｄ属性が“ｂａｓｅｂｏｘ”のスタイル情報は、“ｗｉｄｔｈ：９６０ｐｘ；ｈｅｉｇｈｔ：５４０ｐｘ；”であることをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００３７】
次に、文書パーザ２２は、ｉｄ属性が“ｊ１”の＜ｏｂｊｅｃｔ＞要素を確認し、そのｔｙｐｅ属性によって、モノメディアがＪＰＥＧリソースファイルであると判断し、ｄａｔａ属性の内容がＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”であることを確認する。
このとき、文書パーザ２２は、静止画用内部キャッシュ２４ａ中のＵＲＩ情報を参照することで、ｄａｔａ属性の内容がＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”であるＪＰＥＧリソースファイルのデコード済み静止画が、既に、静止画用内部キャッシュ２４ａに格納されていることを確認し、ｓｔｙｌｅ属性の内容とｉｄ情報“ｊ１”をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ここでは、ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”であるＪＰＥＧリソースファイルのデコード済み静止画が、既に、静止画用内部キャッシュ２４ａに格納されている例を示したが、未だ、当該ＪＰＥＧリソースファイルがデータ放送サーバ１から取得されておらず、そのＪＰＥＧリソースファイルのデコード済み静止画が静止画用内部キャッシュ２４ａに格納されていない場合には、上記と同様の手順で、ＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルを展開する必要がある。
【００３８】
次に、文書パーザ２２は、ｉｄ情報“ｊ１”及び静止画用内部キャッシュ２４ａにおけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
モノメディア管理部２５は、文書パーザ２２からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ１”及び静止画用内部キャッシュ２４ａにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【００３９】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ１”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、静止画用内部キャッシュ２４ａからデコード済み静止画データを読み出し、その描画位置・描画サイズで、静止画をモニタ１６に描画する。
ただし、レイアウト管理部２６が静止画用内部キャッシュ２４ａからデコード済み静止画データを読み出しても、静止画用内部キャッシュ２４ａには、そのデコード済み静止画データが開放されずに残っている。
次に、文書パーザ２２は、ｉｄ属性が“ｐ２”の＜ｐ＞要素を確認し、文字列「文書遷移した」をｄａｔａ属性として取り出し、上述した「次ページを表示する」を描画する場合と同様にして、文字列「文書遷移した」を描画する。
【００４０】
以上で明らかなように、この実施の形態１によれば、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）にしたがって文書が提示されたのち、クリック入力が行われることによって、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているＪＰＥＧリソースファイルのデコード済み静止画データが既に静止画用内部キャッシュ２４ａに展開されているか否かを確認し、そのＪＰＥＧリソースファイルのデコード済み静止画データが未だ展開されていない場合に限り、データ放送サーバ１からＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルに対する展開処理を実施し、そのＪＰＥＧリソースファイルのデコード済み静止画データを静止画用内部キャッシュ２４ａに展開するように構成したので、デコード済み静止画データが既に静止画用内部キャッシュ２４ａに展開されているＪＰＥＧリソースファイルに対する取得処理や展開処理を省略することができるようになり、その結果、処理手順や処理時間を削減することができる効果を奏する。
【００４１】
なお、この実施の形態１では、ＪＰＥＧリソースファイルのデコード済み静止画データを再利用するものについて示したが、内部データ用メモリ２４内にグラフィックスデータ用キャッシュを確保し、例えば、ＰＮＧ（Ｐｏｒｔａｂｌｅ  Ｎｅｔｗｏｒｋ  Ｇｒａｐｈｉｃｓ）などのグラフィックス形式リソースファイルの展開データとして、デコード済みグラフィックスデータを当該グラフィックスデータ用キャッシュに展開し、デコード済み静止画データと同様にして、デコード済みグラフィックスデータを再利用するようにしてもよい。
【００４２】
実施の形態２．
上記実施の形態１では、データ放送受信機３が、ＪＰＥＧリソースファイルのデコード済み静止画データが既に静止画用内部キャッシュ２４ａに展開されているか否かを確認し、そのＪＰＥＧリソースファイルのデコード済み静止画データが未だ展開されていない場合に限り、データ放送サーバ１からＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルに対する展開処理を実施し、そのＪＰＥＧリソースファイルのデコード済み静止画データを静止画用内部キャッシュ２４ａに展開するものについて示したが、データ放送サーバ１が同一のＪＰＥＧリソースファイルの記述を含む複数のＢＭＬ文書ファイルを送信する場合、そのＪＰＥＧリソースファイルのリソースキャッシュ指示（例えば、ＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルをリソースキャッシュメモリ２１で保持し続ける指令）を最初に送信するＢＭＬ文書ファイルに明示的に記述するようにしてもよい。
この場合、データ放送受信機３は、詳細は後述するが、最初に送信されるＢＭＬ文書ファイルに記述されている指令にしたがって、データ放送サーバ１からＪＰＥＧリソースファイルを取得して、そのＪＰＥＧリソースファイルをリソースキャッシュメモリ２１で保持し続け、次に送信されるＢＭＬ文書ファイルに記述されているＪＰＥＧリソースファイルについては取得処理を実施せずに、リソースキャッシュメモリ２１に保持されているＪＰＥＧリソースファイルを利用するようにする。
【００４３】
以下、処理内容を具体的に説明する。
図５はこの発明の実施の形態２によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図であり、図において、図２と同一符号は同一又は相当部分を示すので説明を省略する。
静止画リソース用保持明示キャッシュ２１ａはリソースキャッシュメモリ２１内に確保されているメモリ領域である。
リソースキャッシュ関連関数処理部３１ａはＢＭＬ文書ファイルに記述されているリソースキャッシュ関連関数を処理する処理部である。
【００４４】
次に動作について説明する。
視聴者がＩＰデータ放送サービスを視聴するために、リモコン４のＩＰデータ放送サービス開始ボタンを押下すると、上記実施の形態１と同様に、リモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号が送信される。
これにより、データ放送受信機３の赤外線インタフェース１１は、リモコン４から送信された赤外線信号を受信する。
【００４５】
レジデント処理部１２は、赤外線インタフェース１１がＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、ＩＰデータ放送サービスを開始するため、データ放送ブラウザ１３を起動する。
データ放送ブラウザ１３の文書パーザ２２は、レジデント処理部１２によって起動されると、上記実施の形態１と同様に、データ放送コンテンツのＢＭＬ文書ファイルの受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える。
【００４６】
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイルを取得する指示を受けると、上記実施の形態１と同様に、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイルを要求元のデータ放送受信機３に返信する。
【００４７】
この実施の形態２では、説明の便宜上、図７に示すＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）と図８に示すＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を返信するものとして説明する。
この場合、最初にＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が示す文書が提示され、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、提示されている文書が、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が示す文書に遷移されるものとする。
【００４８】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【００４９】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータを解析して、“ｏｎｌｏａｄ（）；”及び“ｏｎｃｌｉｃｋ（）；”関数が含まれていることを確認すると、この２つの関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【００５０】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データ（＜ｂｍｌ＞要素、＜ｈｅａｄ＞要素、＜ｂｏｄｙ＞要素）を上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００５１】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を配置しようとするが、ｄａｔａ属性の指定がｎｕｌｌのため、この段階では実際の提示を行わない。
次にｉｄ属性が“ｐ１”の＜ｐ＞要素のｄａｔａ属性として「文書遷移」の提示指示をレイアウト管理部２６に行って、当該文字列が提示される。
【００５２】
文書パーザ２２は、その後に＜ｂｏｄｙ＞のｏｎｌｏａｄ属性を実行する。
文書パーザ２２は、ｏｎｌｏａｄ属性の内容に従って、“ｏｎｌｏａｄ（）；”スクリプトの実行をＥＣＭＡスクリプト実行系３１に依頼する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２から“ｏｎｌｏａｄ（）；”スクリプトの実行依頼を受けると、ＥＣＭＡスクリプト作業用メモリ３２に格納されているスクリプト情報から“ｏｎｌｏａｄ（）；”の読み出しを行う。
“ｏｎｌｏａｄ（）；”の最初には、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”）；
とある。これは、図６に示す定義の内容である。
【００５３】
データ放送サーバ１が本スクリプトをＢＭＬ文書に記述すると、データ放送受信機３では、引数である指定ＵＲＩのリソースファイルをＨＴＴＰ／ＧＥＴコマンドで取得後、ｒｅｌｅａｓｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ（）関数が呼ばれるまで、ＢＭＬ文書ファイルの遷移が発生しても、キャッシュをし続けることになる。
具体的には、以下のとおりである。
【００５４】
ＥＣＭＡスクリプト実行系３１は、本関数の処理をリソースキャッシュ関連関数処理部３１ａに指示する。
リソースキャッシュ関連関数処理部３１ａは、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先を自己に設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
伝送プロトコル部１４は、リソースキャッシュ関連関数処理部３１ａから上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をリソースキャッシュ関連関数処理部３１ａに出力する。
【００５５】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”）；
となっているため、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先をリソースキャッシュ関連関数処理部３１ａに設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
伝送プロトコル部１４は、ＥＣＭＡスクリプト実行系３１から上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をリソースキャッシュ関連関数処理部３１ａに出力する。
【００５６】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｄｏｃｕｍｅｎｔ.ｇｅｔＥｌｅｍｅｎｔＢｙＩｄ(“ｊ０”)．ｄａｔａ＝
“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”；
となっているので、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”に変更する旨をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知し、本スクリプト処理を終了する。
【００５７】
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、内部データ用メモリ２４にｉｄ情報“ｊ０”の記載があることを確認すると、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”とするように文書パーザ２２に依頼する。
文書パーザ２２は、リソースキャッシュメモリ２１の内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルが取得済みのリソースファイルであることを確認し、ｉｄ情報“ｊ０”及び静止画リソース用保持明示キャッシュ２１ａにおけるＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のＪＰＥＧリソースファイルの格納先アドレスを含むＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知する。
【００５８】
モノメディアデコーダ２３は、文書パーザ２２からＪＰＥＧリソースファイルの展開指令を受けると、その展開指令に含まれている格納先アドレスを参照して、静止画リソース用保持明示キャッシュ２１ａからＪＰＥＧリソースファイルを読み出し、そのＪＰＥＧリソースファイルの展開処理を実施する。
モノメディアデコーダ２３は、ＪＰＥＧリソースファイルの展開処理を実施すると、ＪＰＥＧリソースファイルの展開データであるデコード済み静止画データを内部データ用メモリ２４に格納し、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
【００５９】
モノメディア管理部２５は、モノメディアデコーダ２３からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４からデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【００６０】
これにより、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画がモニタ１６に描画されるが、ｉｄ情報“ｊ１”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”にして、同様に処理することで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画がモニタ１６に描画される。
【００６１】
ここで、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力（画面切替操作）であると判断し、“ｏｎｃｌｉｃｋ（）；”を実行する。
“ｏｎｃｌｉｃｋ（）；”が、
Ｂｒｏｗｓｅｒ．ｌａｎｃｈＤｏｃｕｍｅｎｔ（“．／２ｎｄ．ｂｍｌ”，  “ｃｕｔ”）；
である旨がＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）に記述されているので、“．／２ｎｄ．ｂｍｌ”への文書遷移指示を文書パーザ２２に通知する。
ただし、静止画リソース用保持明示キャッシュ２１ａに格納されている“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”と“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のＪＰＥＧリソースファイルは開放されない。
【００６２】
文書パーザ２２は、ＥＣＭＡスクリプト実行系３１から“．／２ｎｄ．ｂｍｌ”への文書遷移指示を受けると、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を取得する場合と同様に、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の受信完了時の通知先を自己に設定して、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を伝送プロトコル部１４に与える。
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を要求元のデータ放送受信機３に返信する。
【００６３】
伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【００６４】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータを解析して、“ｏｎｃｌｉｃｋ（）；”という関数が含まれていることを確認すると、この関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【００６５】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データ（＜ｂｍｌ＞要素、＜ｈｅａｄ＞要素、＜ｂｏｄｙ＞要素）を上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００６６】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”であると認識する。
そして、リソースキャッシュメモリ２１の内容を参照して、指定ＵＲＩは取得済みリソースファイルであると判断し、ｉｄ情報“ｊ０”及び静止画リソース用保持明示キャッシュ２１ａにおけるＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のＪＰＥＧリソースファイルの格納先アドレスを含むＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知する。
【００６７】
モノメディアデコーダ２３は、文書パーザ２２からＪＰＥＧリソースファイルの展開指令を受けると、その展開指令に含まれている格納先アドレスを参照して、静止画リソース用保持明示キャッシュ２１ａからＪＰＥＧリソースファイルを読み出し、そのＪＰＥＧリソースファイルの展開処理を実施する。
モノメディアデコーダ２３は、ＪＰＥＧリソースファイルの展開処理を実施すると、ＪＰＥＧリソースファイルの展開データであるデコード済み静止画データを内部データ用メモリ２４に格納し、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
【００６８】
モノメディア管理部２５は、モノメディアデコーダ２３からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４からデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【００６９】
これにより、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画がモニタ１６に描画されるが、ｉｄ情報“ｊ１”の＜ｏｂｊｅｃｔ＞要素についても、ｉｄ情報“ｊ０”の＜ｏｂｊｅｃｔ＞要素と同様に、既に取得済みリソースファイルとして、ＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知することで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画がモニタ１６に描画される
【００７０】
ここで、視聴者がリモコン４を操作して、クリック入力を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力であると判断し、“ｏｎｃｌｉｃｋ（）；”を実行する。
“ｏｎｃｌｉｃｋ（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ００．ｊｐｇ”  )；
である旨がＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているので、本関数の処理をリソースキャッシュ関連関数処理部３１ａに指示する。
これにより、リソースキャッシュ関連関数処理部３１ａは、静止画リソース用保持明示キャッシュ２１ａ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のリソースファイルを開放する。
【００７１】
また、“ｏｎｃｌｉｃｋ（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ０１．ｊｐｇ”  )；
である旨がＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているので、本関数の処理をリソースキャッシュ関連関数処理部３１ａに指示する。
これにより、リソースキャッシュ関連関数処理部３１ａは、静止画リソース用保持明示キャッシュ２１ａ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のリソースファイルを開放する。
【００７２】
以上で明らかなように、この実施の形態２によれば、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にＪＰＥＧリソースファイルの取得、キャッシュ及び開放のタイミングを指定することができる。
これにより、同一のＪＰＥＧリソースファイルに対するＨＴＴＰ／ＧＥＴコマンドを用いた取得処理を重複させることなく、ＪＰＥＧリソースファイルを再利用することができる効果を奏する。
【００７３】
なお、この実施の形態２では、同一のＪＰＥＧリソースファイルに対する取得処理を重複させることなく、ＪＰＥＧリソースファイルを再利用するものについて示したが、リソースキャッシュメモリ２１内にグラフィックスリソース用保持明示キャッシュを確保し、リソースキャッシュ関数によって、例えば、ＰＮＧなどのグラフィックス形式リソースファイルのキャッシュを指定することで、同一のグラフィックス形式リソースファイルに対する取得処理を重複させることなく、グラフィックス形式リソースファイルを再利用するようにしてもよい。
【００７４】
また、リソースキャッシュメモリ２１内にテーブルリソース用保持明示キャッシュを確保し、リソースキャッシュ関数によって、例えば、テーブルリソースファイルのキャッシュを指定することで、同一のテーブルリソースファイルに対する取得処理を重複させることなく、テーブルリソースファイルを再利用するようにしてもよい。
【００７５】
実施の形態３．
上記実施の形態２では、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にＪＰＥＧリソースファイルの取得、キャッシュ及び開放のタイミングを指定するものについて示したが、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的に使用中のリソースファイルをリソースキャッシュメモリ２１内のＥＣＭＡスクリプトリソース用保持明示キャッシュ２１ｂに格納するようにしてもよい。
【００７６】
以下、処理内容を具体的に説明する。
図９はこの発明の実施の形態３によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図であり、図において、図５と同一符号は同一又は相当部分を示すので説明を省略する。
ＥＣＭＡスクリプトリソース用保持明示キャッシュ２１ｂはリソースキャッシュメモリ２１内に確保されているメモリ領域である。
使用中リソースキャッシュ関連関数処理部３１ｂはＢＭＬ文書ファイルに記述されている使用中リソースキャッシュ関連関数を処理する処理部である。
【００７７】
次に動作について説明する。
視聴者がＩＰデータ放送サービスを視聴するために、リモコン４のＩＰデータ放送サービス開始ボタンを押下すると、上記実施の形態１と同様に、リモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号が送信される。
これにより、データ放送受信機３の赤外線インタフェース１１は、リモコン４から送信された赤外線信号を受信する。
【００７８】
レジデント処理部１２は、赤外線インタフェース１１がＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、ＩＰデータ放送サービスを開始するため、データ放送ブラウザ１３を起動する。
データ放送ブラウザ１３の文書パーザ２２は、レジデント処理部１２によって起動されると、上記実施の形態１と同様に、データ放送コンテンツのＢＭＬ文書ファイルの受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える。
【００７９】
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイルを取得する指示を受けると、上記実施の形態１と同様に、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイルを要求元のデータ放送受信機３に返信する。
【００８０】
この実施の形態３では、説明の便宜上、図１１に示すＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）と図１２に示すＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を返信するものとして説明する。
この場合、最初にＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が示す文書が提示され、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、提示されている文書が、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が示す文書に遷移されるものとする。
【００８１】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【００８２】
文書パーザ２２は、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）において、
＜ｓｃｒｉｐｔ  ｓｒｃ＝“．／ｃｏｍｍｏｎ．ｅｃｍ”  ／＞
が記述されているので、当該リソースである“．／ｃｏｍｍｏｎ．ｅｃｍ”のＥＣＭＡスクリプトリソースファイル（図１３を参照）を取得し、そのＥＣＭＡスクリプトリソースファイルをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からＥＣＭＡスクリプトリソースファイルを受けると、そのＥＣＭＡスクリプトリソースファイルを解析する。
図１３の例では、“ｏｎｌｏａｄ（）；”、“ｏｎｃｌｉｃｋ１（）；”、“ｏｎｃｌｉｃｋ２（）；”という関数が含まれているので、これら３つ関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【００８３】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データ（＜ｂｍｌ＞要素、＜ｈｅａｄ＞要素、＜ｂｏｄｙ＞要素）を上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００８４】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を配置しようとするが、ｄａｔａ属性の指定がｎｕｌｌのため、この段階では実際の提示を行わない。
次にｉｄ属性が“ｐ１”の＜ｐ＞要素のｄａｔａ属性として「文書遷移」の提示指示をレイアウト管理部２６に行って、当該文字列が提示される。
【００８５】
文書パーザ２２は、その後に＜ｂｏｄｙ＞のｏｎｌｏａｄ属性を実行する。
文書パーザ２２は、ｏｎｌｏａｄ属性の内容に従って、“ｏｎｌｏａｄ（）；”スクリプトの実行をＥＣＭＡスクリプト実行系３１に依頼する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２から“ｏｎｌｏａｄ（）；”スクリプトの実行依頼を受けると、ＥＣＭＡスクリプト作業用メモリ３２に格納されているスクリプト情報から“ｏｎｌｏａｄ（）；”の読み出しを行う。
“ｏｎｌｏａｄ（）；”の最初には、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＵｓｉｎｇＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
（“．／ｃｏｍｍｏｎ．ｅｃｍ”  ）；
とある。これは、図１０に示す定義の内容である。
【００８６】
データ放送サーバ１が本スクリプトをＢＭＬ文書に記述すると、データ放送受信機３では、引数である指定ＵＲＩの現在使用中のリソースファイルをキャッシュし、ｒｅｌｅａｓｅＵｓｉｎｇＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ（）関数が呼ばれるまで、ＢＭＬ文書の遷移が発生しても、キャッシュをし続けることになる。
具体的には、以下のとおりである。
【００８７】
ＥＣＭＡスクリプト実行系３１は、本関数の処理をリソースキャッシュ関連関数処理部３１ａ及び使用中リソースキャッシュ関連関数処理部３１ｂに指示する。
使用中リソースキャッシュ関連関数処理部３１ｂは、リソースキャッシュメモリ２１に格納されているリソースファイルの中から、当該ＥＣＭＡスクリプトリソースファイルを見つけ、そのＥＣＭＡスクリプトリソースファイルをＥＣＭＡスクリプトリソース用保持明示キャッシュ２１ｂに移動させる。
【００８８】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”）；
となっているため、上記実施の形態２と同様に、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先をリソースキャッシュ関連関数処理部３１ａに設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
伝送プロトコル部１４は、ＥＣＭＡスクリプト実行系３１から上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をリソースキャッシュ関連関数処理部３１ａに出力する。
【００８９】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”）；
となっているため、上記実施の形態２と同様に、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先をリソースキャッシュ関連関数処理部３１ａに設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
伝送プロトコル部１４は、ＥＣＭＡスクリプト実行系３１から上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をリソースキャッシュ関連関数処理部３１ａに出力する。
【００９０】
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、内部データ用メモリ２４にｉｄ情報“ｊ０”の記載があることを確認すると、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”とするように文書パーザ２２に依頼する。
文書パーザ２２は、リソースキャッシュメモリ２１の内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルが取得済みのリソースファイルであることを確認し、ｉｄ情報“ｊ０”及び静止画リソース用保持明示キャッシュ２１ａにおけるＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のＪＰＥＧリソースファイルの格納先アドレスを含むＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知する。
【００９１】
モノメディアデコーダ２３は、文書パーザ２２からＪＰＥＧリソースファイルの展開指令を受けると、その展開指令に含まれている格納先アドレスを参照して、静止画リソース用保持明示キャッシュ２１ａからＪＰＥＧリソースファイルを読み出し、そのＪＰＥＧリソースファイルの展開処理を実施する。
モノメディアデコーダ２３は、ＪＰＥＧリソースファイルの展開処理を実施すると、ＪＰＥＧリソースファイルの展開データであるデコード済み静止画データを内部データ用メモリ２４に格納し、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
【００９２】
モノメディア管理部２５は、モノメディアデコーダ２３からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４からデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【００９３】
これにより、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画がモニタ１６に描画されるが、ｉｄ情報“ｊ１”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”にして、同様に処理することで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画がモニタ１６に描画される。
【００９４】
ここで、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力（画面切替操作）であると判断し、“ｏｎｃｌｉｃｋ１（）；”を実行する。
“ｏｎｃｌｉｃｋ１（）；”が、
Ｂｒｏｗｓｅｒ．ｌａｎｃｈＤｏｃｕｍｅｎｔ（“．／２ｎｄ．ｂｍｌ”，  “ｃｕｔ”）；
である旨が記述されているので、“．／２ｎｄ．ｂｍｌ”への文書遷移指示を文書パーザ２２に通知する。
ただし、静止画リソース用保持明示キャッシュ２１ａに格納されている“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”と“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のＪＰＥＧリソースファイルは開放されない。
【００９５】
文書パーザ２２は、ＥＣＭＡスクリプト実行系３１から“．／２ｎｄ．ｂｍｌ”への文書遷移指示を受けると、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を取得する場合と同様に、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の受信完了時の通知先を自己に設定して、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を伝送プロトコル部１４に与える。
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を要求元のデータ放送受信機３に返信する。
【００９６】
伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【００９７】
文書パーザ２２は、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に
＜ｓｃｒｉｐｔ  ｓｒｃ＝“．／ｃｏｍｍｏｎ．ｅｃｍ”  ／＞
が記述されているので、リソースキャッシュメモリ２１内のＥＣＭＡスクリプトリソース用保持明示キャッシュ２１ｂから当該ＵＲＩ“．／ｃｏｍｍｏｎ．ｅｃｍ”を見つけて、このリソースからスクリプトデータを解析し、“ｏｎｌｏａｄ（）；”、“ｏｎｃｌｉｃｋ１（）；”、“ｏｎｃｌｉｃｋ２（）；”という関数が含まれているので、これら３つ関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【００９８】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データを上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【００９９】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”である認識する。
そして、リソースキャッシュメモリ２１の内容を参照して、指定ＵＲＩは取得済みリソースファイルであると判断し、ｉｄ情報“ｊ０”及び静止画リソース用保持明示キャッシュ２１ａにおけるＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のＪＰＥＧリソースファイルの格納先アドレスを含むＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知する。
【０１００】
モノメディアデコーダ２３は、文書パーザ２２からＪＰＥＧリソースファイルの展開指令を受けると、その展開指令に含まれている格納先アドレスを参照して、静止画リソース用保持明示キャッシュ２１ａからＪＰＥＧリソースファイルを読み出し、そのＪＰＥＧリソースファイルの展開処理を実施する。
モノメディアデコーダ２３は、ＪＰＥＧリソースファイルの展開処理を実施すると、ＪＰＥＧリソースファイルの展開データであるデコード済み静止画データを内部データ用メモリ２４に格納し、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含むＪＰＥＧ展開完了通知をモノメディア管理部２５に出力する。
【０１０１】
モノメディア管理部２５は、モノメディアデコーダ２３からＪＰＥＧ展開完了通知を受けると、ｉｄ情報“ｊ０”及び内部データ用メモリ２４におけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、内部データ用メモリ２４からデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１０２】
これにより、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画がモニタ１６に描画されるが、ｉｄ情報“ｊ１”の＜ｏｂｊｅｃｔ＞要素についても、ｉｄ情報“ｊ０”の＜ｏｂｊｅｃｔ＞要素と同様に、既に取得済みリソースファイルとして、ＪＰＥＧリソースファイルの展開指令をモノメディアデコーダ２３に通知することで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画がモニタ１６に描画される
【０１０３】
ここで、視聴者がリモコン４を操作して、クリック入力を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力であると判断し、“ｏｎｃｌｉｃｋ２（）；”を実行する。
“ｏｎｃｌｉｃｋ２（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＵｓｉｎｇＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
(“．/ｃｏｍｍｏｎ．ｅｃｍ”  )；
である旨が記述されているので、本関数の処理を使用中リソースキャッシュ関連関数処理部３１ｂに指示する。
これにより、使用中リソースキャッシュ関連関数処理部３１ｂは、ＥＣＭＡスクリプトリソース用保持明示キャッシュ２１ｂ内の指定ＵＲＩ“．／ｃｏｍｍｏｎ．ｅｃｍ”のリソースファイルを開放する
ただし、ＥＣＭＡスクリプトリソースファイルを展開してＥＣＭＡスクリプト作業用メモリ３２に格納されているデータは開放されない。
【０１０４】
また、“ｏｎｃｌｉｃｋ２（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ００．ｊｐｇ”  )；
である旨が記述されているので、本関数の処理をリソースキャッシュ関連関数処理部３１ａに指示する。
これにより、リソースキャッシュ関連関数処理部３１ａは、静止画リソース用保持明示キャッシュ２１ａ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のリソースファイルを開放する。
【０１０５】
また、“ｏｎｃｌｉｃｋ２（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＲｅｓｏｕｒｃｅＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ０１．ｊｐｇ”  )；
である旨が記述されているので、本関数の処理をリソースキャッシュ関連関数処理部３１ａに指示する。
これにより、リソースキャッシュ関連関数処理部３１ａは、静止画リソース用保持明示キャッシュ２１ａ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のリソースファイルを開放する。
【０１０６】
以上で明らかなように、この実施の形態３によれば、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的に展開して使用中のリソースファイルのキャッシュや開放のタイミングを指定することができる。
これにより、同一のＪＰＥＧリソースファイルに対するＨＴＴＰ／ＧＥＴコマンドを用いた取得処理を重複させることなく、ＪＰＥＧリソースファイルを再利用することができる効果を奏する。
【０１０７】
なお、この実施の形態３では、同一のＪＰＥＧリソースファイルに対する取得処理を重複させることなく、ＪＰＥＧリソースファイルを再利用するものについて示したが、リソースキャッシュメモリ２１内に使用中スタイル情報リソース用保持明示キャッシュを確保し、使用中リソースキャッシュ関数によって、スタイル情報リソースファイルのキャッシュを指定することで、同一のスタイル情報リソースファイルに対する取得処理を重複させることなく、スタイル情報リソースファイルを再利用するようにしてもよい。
【０１０８】
また、リソースキャッシュメモリ２１内に使用中データ放送文書リソース用保持明示キャッシュを確保し、使用中リソースキャッシュ関数によって、使用中データ放送文書リソースファイルのキャッシュを指定することで、同一の使用中データ放送文書リソースファイルに対する取得処理を重複させることなく、使用中データ放送文書リソースファイルを再利用するようにしてもよい。
【０１０９】
実施の形態４．
上記実施の形態２，３では、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にリソースファイルをリソースキャッシュメモリ２１に保持し続ける例を示したが、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にリソースファイルの展開データを内部データ用メモリ２４に保持し続けるようにしてもよい。
【０１１０】
以下、処理内容を具体的に説明する。
図１４はこの発明の実施の形態４によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図であり、図において、図５と同一符号は同一又は相当部分を示すので説明を省略する。
デコード済み静止画データ用保持明示キャッシュ２４ｂは内部データ用メモリ２４内に確保されているメモリ領域である。
デコード済み静止画データキャッシュ関連関数処理部３１ｃはＢＭＬ文書ファイルに記述されているデコード済み静止画データキャッシュ関連関数を処理する処理部である。
【０１１１】
次に動作について説明する。
視聴者がＩＰデータ放送サービスを視聴するために、リモコン４のＩＰデータ放送サービス開始ボタンを押下すると、上記実施の形態１と同様に、リモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号が送信される。
これにより、データ放送受信機３の赤外線インタフェース１１は、リモコン４から送信された赤外線信号を受信する。
【０１１２】
レジデント処理部１２は、赤外線インタフェース１１がＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、ＩＰデータ放送サービスを開始するため、データ放送ブラウザ１３を起動する。
データ放送ブラウザ１３の文書パーザ２２は、レジデント処理部１２によって起動されると、上記実施の形態１と同様に、データ放送コンテンツのＢＭＬ文書ファイルの受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える。
【０１１３】
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイルを取得する指示を受けると、上記実施の形態１と同様に、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイルを要求元のデータ放送受信機３に返信する。
【０１１４】
この実施の形態４では、説明の便宜上、図１６に示すＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）と図１７に示すＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を返信するものとして説明する。
この場合、最初にＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が示す文書が提示され、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、提示されている文書が、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が示す文書に遷移されるものとする。
【０１１５】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【０１１６】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータを解析して、“ｏｎｌｏａｄ（）；”及び“ｏｎｃｌｉｃｋ（）；”関数が含まれていることを確認すると、この２つの関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【０１１７】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データを上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【０１１８】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を配置しようとするが、ｄａｔａ属性の指定がｎｕｌｌのため、この段階では実際の提示を行わない。
次にｉｄ属性が“ｐ１”の＜ｐ＞要素のｄａｔａ属性として「文書遷移」の提示指示をレイアウト管理部２６に行って、当該文字列が提示される。
【０１１９】
文書パーザ２２は、その後に＜ｂｏｄｙ＞のｏｎｌｏａｄ属性を実行する。
文書パーザ２２は、ｏｎｌｏａｄ属性の内容に従って、“ｏｎｌｏａｄ（）；”スクリプトの実行をＥＣＭＡスクリプト実行系３１に依頼する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２から“ｏｎｌｏａｄ（）；”スクリプトの実行依頼を受けると、ＥＣＭＡスクリプト作業用メモリ３２に格納されているスクリプト情報から“ｏｎｌｏａｄ（）；”の読み出しを行う。
“ｏｎｌｏａｄ（）；”の最初には、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”）；
とある。これは、図１５に示す定義の内容である。
【０１２０】
データ放送サーバ１が本スクリプトをＢＭＬ文書に記述すると、データ放送受信機３では、引数である指定ＵＲＩのリソースファイルのデコード済静止画データをｒｅｌｅａｓｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ（）関数が呼ばれるまで、ＢＭＬ文書の遷移が発生しても、キャッシュをし続けることになる。
具体的には、以下のとおりである。
【０１２１】
ＥＣＭＡスクリプト実行系３１は、本関数の処理をデコード済み静止画データキャッシュ関連関数処理部３１ｃに指示する。
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、リソースキャッシュメモリ２１の格納内容を確認し、当該ＵＲＩのリソースが格納されていないことが分かると、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先を自己に設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
【０１２２】
伝送プロトコル部１４は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をデコード済み静止画データキャッシュ関連関数処理部３１ｃに出力する。
【０１２３】
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、伝送プロトコル部１４からＪＰＥＧリソースファイルの受信完了通知を受けると、ＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”及び静止画リソース用保持明示キャッシュ２１ａにおけるＪＰＥＧリソースファイルの格納先アドレスを含む静止画デコードデータキャッシュ有展開指令をモノメディアデコーダ２３に通知する。
モノメディアデコーダ２３は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから静止画デコードデータキャッシュ有展開指令を受けると、指定アドレスの静止画リソースファイルを展開し、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納する。
【０１２４】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”）；
となっているため、上記と同様に、本関数の処理をデコード済み静止画データキャッシュ関連関数処理部３１ｃに指示する。
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、リソースキャッシュメモリ２１の格納内容を確認し、当該ＵＲＩのリソースが格納されていないことが分かると、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先を自己に設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
【０１２５】
伝送プロトコル部１４は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をデコード済み静止画データキャッシュ関連関数処理部３１ｃに出力する。
【０１２６】
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、伝送プロトコル部１４からＪＰＥＧリソースファイルの受信完了通知を受けると、ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”及び静止画リソース用保持明示キャッシュ２１ａにおけるＪＰＥＧリソースファイルの格納先アドレスを含む静止画デコードデータキャッシュ有展開指令をモノメディアデコーダ２３に通知する。
モノメディアデコーダ２３は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから静止画デコードデータキャッシュ有展開指令を受けると、指定アドレスの静止画リソースファイルを展開し、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納する。
【０１２７】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｄｏｃｕｍｅｎｔ.ｇｅｔＥｌｅｍｅｎｔＢｙＩｄ(“ｊ０”)．ｄａｔａ＝
“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”；
となっているので、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”に変更する旨をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知し、本スクリプト処理を終了する。
【０１２８】
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、内部データ用メモリ２４にｉｄ情報“ｊ０”の記載があることを確認すると、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”とするように文書パーザ２２に依頼する。
文書パーザ２２は、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ０”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１２９】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１３０】
ここで、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力（画面切替操作）であると判断し、“ｏｎｃｌｉｃｋ（）；”を実行する。
“ｏｎｃｌｉｃｋ（）；”が、
Ｂｒｏｗｓｅｒ．ｌａｎｃｈＤｏｃｕｍｅｎｔ（“．／２ｎｄ．ｂｍｌ”，  “ｃｕｔ”）；
である旨がＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）に記述されているので、“．／２ｎｄ．ｂｍｌ”への文書遷移指示を文書パーザ２２に通知する。
ただし、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納されている“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”と“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のデコード済み静止画データは開放されない。
【０１３１】
文書パーザ２２は、ＥＣＭＡスクリプト実行系３１から“．／２ｎｄ．ｂｍｌ”への文書遷移指示を受けると、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を取得する場合と同様に、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の受信完了時の通知先を自己に設定して、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を伝送プロトコル部１４に与える。
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を要求元のデータ放送受信機３に返信する。
【０１３２】
伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【０１３３】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータを解析して、“ｏｎｃｌｉｃｋ（）；”という関数が含まれていることを確認すると、この関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【０１３４】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データを上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【０１３５】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”であると認識する。
そして、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ０”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１３６】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１３７】
次に、文書パーザ２２は、続くｉｄ情報が“ｊ１”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”であると認識する。
そして、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ１”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１３８】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ１”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１３９】
ここで、視聴者がリモコン４を操作して、クリック入力を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力であると判断し、“ｏｎｃｌｉｃｋ（）；”を実行する。
“ｏｎｃｌｉｃｋ（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ００．ｊｐｇ”  )；
である旨がＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているので、本関数の処理をデコード済み静止画データキャッシュ関連関数処理部３１ｃに指示する。
これにより、デコード済み静止画データキャッシュ関連関数処理部３１ｃは、デコード済み静止画データ用保持明示キャッシュ２４ｂ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”のリソースファイルを開放する。
【０１４０】
また、“ｏｎｃｌｉｃｋ（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
(“．/ｉｍｇ/ｉｍｇ０１．ｊｐｇ”  )；
である旨がＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）に記述されているので、本関数の処理をデコード済み静止画データキャッシュ関連関数処理部３１ｃに指示する。
これにより、デコード済み静止画データキャッシュ関連関数処理部３１ｃは、デコード済み静止画データ用保持明示キャッシュ２４ｂ内の指定ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のリソースファイルを開放する。
【０１４１】
以上で明らかなように、この実施の形態４によれば、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にデコード済み静止画データの格納、キャッシュや開放のタイミングを指定することができる。
これにより、同一のＪＰＥＧリソースファイルに対する展開処理を重複させることなく、ＪＰＥＧリソースファイルのデコード済み静止画データを再利用することができる効果を奏する。
【０１４２】
なお、この実施の形態４では、同一のＪＰＥＧリソースファイルに対する展開処理を重複させることなく、ＪＰＥＧリソースファイルのデコード済み静止画データを再利用するものについて示したが、内部データ用メモリ２４内にデコード済みグラフィックスデータ用保持明示キャッシュを確保し、デコード済みグラフィックスデータキャッシュ関連関数によって、デコード済みグラフィックスデータの格納、キャッシュや開放タイミングを指定することで、同一のグラフィックスリソースファイルに対する展開処理を重複させることなく、デコード済みグラフィックスデータを再利用するようにしてもよい。
【０１４３】
実施の形態５．
上記実施の形態４では、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的にデコード済みデータを内部データ用メモリ２４内に保持し続けるものについて示したが、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的に展開済みＥＣＭＡスクリプトデータをＥＣＭＡスクリプト作業用メモリ３２内に保持し続けるようにしてもよい。
【０１４４】
以下、処理内容を具体的に説明する。
図１８はこの発明の実施の形態５によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図であり、図において、図１４と同一符号は同一又は相当部分を示すので説明を省略する。
展開済みＥＣＭＡスクリプトデータ用保持明示キャッシュ３２ａはＥＣＭＡスクリプト作業用メモリ３２内に確保されているメモリ領域である。
展開済みＥＣＭＡスクリプトデータキャッシュ関連関数処理部３１ｄはＢＭＬ文書ファイルに記述されている展開済みＥＣＭＡスクリプトデータキャッシュ関連関数を処理する処理部である。
【０１４５】
次に動作について説明する。
視聴者がＩＰデータ放送サービスを視聴するために、リモコン４のＩＰデータ放送サービス開始ボタンを押下すると、上記実施の形態１と同様に、リモコン４からＩＰデータ放送サービス開始指令を示す赤外線信号が送信される。
これにより、データ放送受信機３の赤外線インタフェース１１は、リモコン４から送信された赤外線信号を受信する。
【０１４６】
レジデント処理部１２は、赤外線インタフェース１１がＩＰデータ放送サービス開始指令を示す赤外線信号を受信すると、ＩＰデータ放送サービスを開始するため、データ放送ブラウザ１３を起動する。
データ放送ブラウザ１３の文書パーザ２２は、レジデント処理部１２によって起動されると、上記実施の形態１と同様に、データ放送コンテンツのＢＭＬ文書ファイルの受信完了時の通知先を自己に設定して、予め固定的に与えられているＩＰデータ放送サービス（予めＵＲＬが指定されているＩＰデータ放送サービス）からＢＭＬ文書ファイルを取得する指示を伝送プロトコル部１４に与える。
【０１４７】
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイルを取得する指示を受けると、上記実施の形態１と同様に、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイルを要求元のデータ放送受信機３に返信する。
【０１４８】
この実施の形態５では、説明の便宜上、図２０に示すＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）と図２１に示すＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を返信するものとして説明する。
この場合、最初にＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）が示す文書が提示され、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、提示されている文書が、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）が示す文書に遷移されるものとする。
【０１４９】
データ放送受信機３の伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
データ放送ブラウザ１３の文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【０１５０】
文書パーザ２２は、ＢＭＬ文書ファイルを文書解析することで、そのＢＭＬ文書ファイルからスクリプトデータのみを分離し、そのスクリプトデータをＥＣＭＡスクリプト実行系３１に出力する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２からスクリプトデータを受けると、そのスクリプトデータを解析して、“ｏｎｌｏａｄ（）；”、“ｏｎｃｌｉｃｋ１（）；”、“ｏｎｃｌｉｃｋ２（）；”という関数が含まれていることを確認すると、これら３つの関数が含まれている旨を示す解析情報をＥＣＭＡスクリプト作業用メモリ３２に格納する。
【０１５１】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データを上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【０１５２】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を配置しようとするが、ｄａｔａ属性の指定がｎｕｌｌのため、この段階では実際の提示を行わない。
次にｉｄ属性が“ｐ１”の＜ｐ＞要素のｄａｔａ属性として「文書遷移」の提示指示をレイアウト管理部２６に行って、当該文字列が提示される。
【０１５３】
文書パーザ２２は、その後に＜ｂｏｄｙ＞のｏｎｌｏａｄ属性を実行する。
文書パーザ２２は、ｏｎｌｏａｄ属性の内容に従って、“ｏｎｌｏａｄ（）；”スクリプトの実行をＥＣＭＡスクリプト実行系３１に依頼する。
ＥＣＭＡスクリプト実行系３１は、文書パーザ２２から“ｏｎｌｏａｄ（）；”スクリプトの実行依頼を受けると、ＥＣＭＡスクリプト作業用メモリ３２に格納されているスクリプト情報から“ｏｎｌｏａｄ（）；”の読み出しを行う。
“ｏｎｌｏａｄ（）；”の最初には、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＤｅｖｅｌｏｐｅｄＳｃｒｉｐｔＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｓｔａｒｔｕｐ．ｂｍｌ”  ）；
とある。これは、図１９に示す定義の内容である。
【０１５４】
データ放送サーバ１が本スクリプトをＢＭＬ文書に記述すると、データ放送受信機３では、引数である指定ＵＲＩのリソースファイルに含まれる展開済みＥＣＭＡスクリプトデータをｒｅｌｅａｓｅＤｅｖｅｌｏｐｅｄＳｃｒｉｐｔＤａｔａＯｎＭｅｍｏｒｙ（）関数が呼ばれるまで、ＢＭＬ文書の遷移が発生しても、キャッシュをし続けることになる。
具体的には、以下のとおりである。
【０１５５】
ＥＣＭＡスクリプト実行系３１は、本関数の処理を展開済みＥＣＭＡスクリプトデータキャッシュ関連関数処理部３１ｄに指示する。
展開済みＥＣＭＡスクリプトデータキャッシュ関連関数処理部３１ｄは、指定ＵＲＩの“．／ｓｔａｒｔｕｐ．ｂｍｌ”に含まれる分の展開済みＥＣＭＡスクリプトデータを展開済みＥＣＭＡスクリプトデータ用保持明示キャッシュ３２ａに移動させる。
【０１５６】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”）；
となっているため、上記実施の形態４と同様に、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先をデコード済み静止画データキャッシュ関連関数処理部３１ｃに設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
【０１５７】
伝送プロトコル部１４は、ＥＣＭＡスクリプト実行系３１から上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をデコード済み静止画データキャッシュ関連関数処理部３１ｃに出力する。
【０１５８】
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、伝送プロトコル部１４からＪＰＥＧリソースファイルの受信完了通知を受けると、ＵＲＩ“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”及び静止画リソース用保持明示キャッシュ２１ａにおけるＪＰＥＧリソースファイルの格納先アドレスを含む静止画デコードデータキャッシュ有展開指令をモノメディアデコーダ２３に通知する。
モノメディアデコーダ２３は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから静止画デコードデータキャッシュ有展開指令を受けると、指定アドレスの静止画リソースファイルを展開し、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納する。
【０１５９】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｂｒｏｗｓｅｒ．ｃａｃｈｅＤｅｃｏｄｅｄＪＰＥＧＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”）；
となっているため、上記実施の形態４と同様に、指定のＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”からＪＰＥＧリソースファイルを受信したときの受信完了時通知先をデコード済み静止画データキャッシュ関連関数処理部３１ｃに設定し、そのＪＰＥＧリソースファイルの取得と保持期間指定キャッシュの指示を伝送プロトコル部１４に通知する。
【０１６０】
伝送プロトコル部１４は、ＥＣＭＡスクリプト実行系３１から上記の通知を受けると、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信することで、データ放送サーバ１からＪＰＥＧリソースファイルを取得し、そのＪＰＥＧリソースファイルを静止画リソース用保持明示キャッシュ２１ａに格納する。
また、伝送プロトコル部１４は、ＪＰＥＧリソースファイルの受信完了通知をデコード済み静止画データキャッシュ関連関数処理部３１ｃに出力する。
【０１６１】
デコード済み静止画データキャッシュ関連関数処理部３１ｃは、伝送プロトコル部１４からＪＰＥＧリソースファイルの受信完了通知を受けると、ＵＲＩ“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”及び静止画リソース用保持明示キャッシュ２１ａにおけるＪＰＥＧリソースファイルの格納先アドレスを含む静止画デコードデータキャッシュ有展開指令をモノメディアデコーダ２３に通知する。
モノメディアデコーダ２３は、デコード済み静止画データキャッシュ関連関数処理部３１ｃから静止画デコードデータキャッシュ有展開指令を受けると、指定アドレスの静止画リソースファイルを展開し、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納する。
【０１６２】
ＥＣＭＡスクリプト実行系３１は、“ｏｎｌｏａｄ（）；”における次の行の読み出しを行う。
次の行は、
ｄｏｃｕｍｅｎｔ.ｇｅｔＥｌｅｍｅｎｔＢｙＩｄ(“ｊ０”)．ｄａｔａ＝
“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”；
となっているので、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”に変更する旨をＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知し、本スクリプト処理を終了する。
【０１６３】
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、内部データ用メモリ２４にｉｄ情報“ｊ０”の記載があることを確認すると、ｉｄ情報“ｊ０”のｄａｔａ属性を“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”とするように文書パーザ２２に依頼する。
文書パーザ２２は、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ０”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１６４】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１６５】
ここで、視聴者がリモコン４を操作して、クリック入力（画面切替操作）を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力（画面切替操作）であると判断し、“ｏｎｃｌｉｃｋ１（）；”を実行する。
“ｏｎｃｌｉｃｋ１（）；”が、
Ｂｒｏｗｓｅｒ．ｌａｎｃｈＤｏｃｕｍｅｎｔ（“．／２ｎｄ．ｂｍｌ”，  “ｃｕｔ”）；
である旨がＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）に記述されているので、“．／２ｎｄ．ｂｍｌ”への文書遷移指示を文書パーザ２２に通知する。
ただし、デコード済み静止画データ用保持明示キャッシュ２４ｂに格納されている“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”と“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”のデコード済み静止画データは開放されない。
【０１６６】
文書パーザ２２は、ＥＣＭＡスクリプト実行系３１から“．／２ｎｄ．ｂｍｌ”への文書遷移指示を受けると、ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）を取得する場合と同様に、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の受信完了時の通知先を自己に設定して、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を伝送プロトコル部１４に与える。
伝送プロトコル部１４は、データ放送ブラウザ１３からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を取得する指示を受けると、ネットワークインタフェース１５を介して指定ＵＲＩのデータ放送サーバ１にアクセスして、ＨＴＴＰ／ＧＥＴコマンドをデータ放送サーバ１に送信する。
データ放送サーバ１は、データ放送受信機３の伝送プロトコル部１４からＨＴＴＰ／ＧＥＴコマンドを受信すると、その応答として、ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を要求元のデータ放送受信機３に返信する。
【０１６７】
伝送プロトコル部１４は、データ放送サーバ１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を受信すると、そのＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）をデータ放送ブラウザ１３のリソースキャッシュメモリ２１に格納し、ＢＭＬ文書ファイルの受信完了通知を文書パーザ２２に出力する。
文書パーザ２２は、伝送プロトコル部１４からＢＭＬ文書ファイルの受信完了通知を受けると、リソースキャッシュメモリ２１からＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）を読み出し、そのＢＭＬ文書ファイルの文書解析を行う。
【０１６８】
次に、文書パーザ２２は、残りのＢＭＬ文書ファイルに記述されている要素データを上の行から順々に確認して、各スタイル情報を取り出し、各スタイル情報と、ｉｄ情報と、生成したＤＯＭ  Ｔｒｅｅと、デコード済みデータへの格納アドレスとをＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に通知する。
ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７は、文書パーザ２２から上記の通知を受けると、そのスタイル情報をｉｄ情報と関連付けて、内部データ用メモリ２４に格納する。
【０１６９】
次に、文書パーザ２２は、＜ｂｏｄｙ＞から＜／ｂｏｄｙ＞までに記載されている内容を実行する。
即ち、文書パーザ２２は、最初にｉｄ情報が“ｂａｓｅｂｏｘ”の＜ｄｉｖ＞要素を配置し、次にｉｄ情報が“ｊ０”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”であると認識する。
そして、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ０”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１７０】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ０”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ００．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１７１】
次に、文書パーザ２２は、続くｉｄ情報が“ｊ１”の＜ｏｂｊｅｃｔ＞要素を確認して、ｄａｔａ属性が“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”であると認識する。
そして、デコード済み静止画データ用保持明示キャッシュ２４ｂの内容を参照して、指定ＵＲＩのＪＰＥＧリソースファイルがデコード済みであることを確認し、ｉｄ情報“ｊ１”及びデコード済み静止画データ用保持明示キャッシュ２４ｂにおけるデコード済み静止画データの格納先アドレスを含む静止画描画指令をレイアウト管理部２６に出力する。
【０１７２】
レイアウト管理部２６は、モノメディア管理部２５から静止画描画指令を受けると、ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部２７に対して、その静止画描画指令に含まれているｉｄ情報“ｊ１”に対応するスタイル情報を問い合わせることで、静止画の描画位置・描画サイズを確認する。
そして、レイアウト管理部２６は、その静止画描画指令に含まれている格納先アドレスを参照して、デコード済み静止画データ用保持明示キャッシュ２４ｂからデコード済み静止画データを読み出し、その描画位置・描画サイズで、“．／ｉｍｇ／ｉｍｇ０１．ｊｐｇ”の静止画をモニタ１６に描画する。
【０１７３】
ここで、視聴者がリモコン４を操作して、クリック入力を行うと、ＥＣＭＡスクリプト実行系３１が、ＥＣＭＡスクリプト作業用メモリ３２の内容を参照することで、クリック入力であると判断し、“ｏｎｃｌｉｃｋ２（）；”を実行する。
“ｏｎｃｌｉｃｋ２（）；”が、
ｂｒｏｗｓｅｒ．ｒｅｌｅａｓｅＤｅｖｅｌｏｐｅｄＳｃｒｉｐｔＤａｔａＯｎＭｅｍｏｒｙ
（“．／ｓｔａｒｔｕｐ．ｂｍｌ”）；
である旨がＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）に記述されているので、“．／ｓｔａｒｔｕｐ．ｂｍｌ”に含まれていた分の展開済みＥＣＭＡスクリプトデータを現在のＢＭＬ文書から文書遷移した際に開放できるように、ＥＣＭＡスクリプト作業用メモリ３２に移動させる。
【０１７４】
以上で明らかなように、この実施の形態５によれば、データ放送サーバ１がＢＭＬ文書ファイルの記述によって、明示的に指定ＵＲＩのリソースファイルに含まれる展開済みＥＣＭＡスクリプトデータのキャッシュや開放のタイミングを指定することができる。
これにより、同一のＥＣＭＡスクリプトデータを利用する場合、展開処理を重複させることなく、再利用することが可能となる。
【０１７５】
なお、この実施の形態５では、指定ＵＲＩのリソースファイルに含まれる展開済みＥＣＭＡスクリプトデータ（ブラウザ内部処理形式スクリプトデータ）のキャッシュや開放のタイミングを指定するものについて示したが、内部データ用メモリ２４内にＤＯＭ Ｔｒｅｅデータ用保持明示キャッシュを確保し、ＢＭＬ文書ファイルの記述によって、展開済みＤＯＭ Ｔｒｅｅデータ（ブラウザ内部処理形式スタイル情報データ）のキャッシュや開放タイミングを指定することで、展開済みＤＯＭ Ｔｒｅｅデータの保持明示キャッシュを実現することも可能である。
【０１７６】
また、内部データ用メモリ２４内に解析済みデータ放送文書用データ保持明示キャッシュを確保し、ＢＭＬ文書ファイルの記述によって、解析済みデータ放送文書データ（ブラウザ内部処理形式データ放送文書データ）のキャッシュや開放タイミングを指定することで、解析済みデータ放送文書データの保持明示キャッシュを実現することも可能である。
【図面の簡単な説明】
【０１７７】
【図１】この発明の実施の形態１によるデータ放送システムを示す構成図である。
【図２】この発明の実施の形態１によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
【図３】ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）の一例を示す説明図である。
【図４】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の一例を示す説明図である。
【図５】この発明の実施の形態２によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
【図６】リソースキャッシュ関連関数の定義を示す説明図である。
【図７】ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）の一例を示す説明図である。
【図８】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の一例を示す説明図である。
【図９】この発明の実施の形態３によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
【図１０】リソースキャッシュ関連関数の定義を示す説明図である。
【図１１】ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）の一例を示す説明図である。
【図１２】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の一例を示す説明図である。
【図１３】ＥＣＭＡスクリプトリソースファイル（ｃｏｍｍｏｎ．ｅｃｍ）の一例を示す説明図である。
【図１４】この発明の実施の形態４によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
【図１５】デコード済み静止画データキャッシュ関連関数の定義を示す説明図である。
【図１６】ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）の一例を示す説明図である。
【図１７】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の一例を示す説明図である。
【図１８】この発明の実施の形態５によるデータ放送受信機３のデータ放送ブラウザ１３を示す構成図である。
【図１９】デコード済み静止画データキャッシュ関連関数の定義を示す説明図である。
【図２０】ＢＭＬ文書ファイル（ｓｔａｒｔｕｐ．ｂｍｌ）の一例を示す説明図である。
【図２１】ＢＭＬ文書ファイル（２ｎｄ．ｂｍｌ）の一例を示す説明図である。
【符号の説明】
【０１７８】
１  データ放送サーバ、２  インターネット、３  データ放送受信機、４  リモコン、１１  赤外線インタフェース、１２  レジデント処理部、１３  データ放送ブラウザ、１４  伝送プロトコル部（文書ファイル受信手段、データ展開手段）、１５  ネットワークインタフェース（文書ファイル受信手段、データ展開手段）、１６  モニタ、１７  フレーム合成処理部、１８  装置管理部、２１  リソースキャッシュメモリ、２１ａ  静止画リソース用保持明示キャッシュ、２１ｂ  ＥＣＭＡスクリプトリソース用保持明示キャッシュ、２２  文書パーザ（文書ファイル受信手段、データ展開手段）、２３  モノメディアデコーダ（データ展開手段）、２４  内部データ用メモリ、２４ａ  静止画用内部キャッシュ、２４ｂ  デコード済み静止画データ用保持明示キャッシュ、２５  モノメディア管理部（データ再生手段）、２６  レイアウト管理部（データ再生手段）、２７  ＤＯＭ Ｔｒｅｅ・ＣＳＳプロパティ管理部、３１  ＥＣＭＡスクリプト実行系、３１ａ  リソースキャッシュ関連関数処理部、３１ｂ  使用中リソースキャッシュ関連関数処理部、３１ｃ  デコード済み静止画データキャッシュ関連関数処理部、３１ｄ  展開済みＥＣＭＡスクリプトデータキャッシュ関連関数処理部、３２  ＥＣＭＡスクリプト作業用メモリ、３２ａ  展開済みＥＣＭＡスクリプトデータ用保持明示キャッシュ、３３  ブラウザ擬似オブジェクト処理部、３４  組込みオブジェクト処理部。
【図１】
2010130637.tif 000003
【図２】
2010130637.tif 000004
【図３】
2010130637.tif 000005
【図４】
2010130637.tif 000006
【図５】
2010130637.tif 000007
【図６】
2010130637.tif 000008
【図７】
2010130637.tif 000009
【図８】
2010130637.tif 000010
【図９】
2010130637.tif 000011
【図１０】
2010130637.tif 000012
【図１１】
2010130637.tif 000013
【図１２】
2010130637.tif 000014
【図１３】
2010130637.tif 000015
【図１４】
2010130637.tif 000016
【図１５】
2010130637.tif 000017
【図１６】
2010130637.tif 000018
【図１７】
2010130637.tif 000019
【図１８】
2010130637.tif 000020
【図１９】
2010130637.tif 000021
【図２０】
2010130637.tif 000022
【図２１】
2010130637.tif 000023