(57)【要約】【課題】キャッシュに残す要素を制御することにより、ユーザの操作性を向上させることを目的とする。【解決手段】構造化文書から、予め設定された優先要素に属する第１の要素を特定する第１の特定手段と、第１の特定手段により特定された第１の要素のキャッシュ優先度を、第１の要素と異なる第２の要素のキャッシュ優先度に比べて高い第１の優先度に決定するキャッシュ優先度決定手段と、構造化文書に含まれる複数の要素をキャッシュに書き込む書込手段と、要素のキャッシュ優先度に基づいて、削除対象の要素を決定する削除対象決定手段と、削除対象の要素をキャッシュから削除する削除手段とを備える。【選択図】図８
2014219922.tif 000002
【特許請求の範囲】
【請求項１】
構造化文書から、予め設定された優先要素に属する第１の要素を特定する第１の特定手段と、
前記第１の特定手段により特定された前記第１の要素のキャッシュ優先度を、前記第１の要素と異なる第２の要素のキャッシュ優先度に比べて高い第１の優先度に決定するキャッシュ優先度決定手段と、
前記構造化文書に含まれる複数の要素をキャッシュに書き込む書込手段と、
前記要素の前記キャッシュ優先度に基づいて、削除対象の要素を決定する削除対象決定手段と、
前記削除対象の前記要素を前記キャッシュから削除する削除手段と
を備えることを特徴とする情報処理装置。
【請求項２】
前記削除対象決定手段は、前記キャッシュの空き容量と新たに前記キャッシュに書き込む要素の容量とを比較し、新たな要素の容量が前記空き容量に比べて大きい場合に、前記削除対象の要素を決定し、
前記書込手段は、前記キャッシュから前記削除対象が削除された後に、前記新たな要素を前記キャッシュに書き込むことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記削除対象決定手段は、前記優先度が最も低い要素を前記削除対象として決定することを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記第１の要素の中から、予め設定された優先情報を含む第３の要素を特定する第２の特定手段をさらに備え、
前記キャッシュ優先度決定手段は、前記第３の要素のキャッシュ優先度を、前記第１の優先度に比べて高い第２の優先度に決定することを特徴とする請求項１又は２に記載の情報処理装置。
【請求項５】
情報処理装置が実行する情報処理方法であって、
構造化文書から、予め設定された優先要素に属する第１の要素を特定する第１の特定ステップと、
前記第１の特定ステップにおいて特定された前記第１の要素のキャッシュ優先度を、前記第１の要素と異なる第２の要素のキャッシュ優先度に比べて高い第１の優先度に決定するキャッシュ優先度決定ステップと、
前記構造化文書に含まれる複数の要素をキャッシュに書き込む書込ステップと、
前記要素の前記キャッシュ優先度に基づいて、削除対象の要素を決定する削除対象決定ステップと、
前記削除対象の前記要素を前記キャッシュから削除する削除ステップと
を含むことを特徴とする情報処理方法。
【請求項６】
前記削除対象決定ステップにおいては、前記キャッシュの空き容量と新たに前記キャッシュに書き込む要素の容量とを比較し、新たな要素の容量が前記空き容量に比べて大きい場合に、前記削除対象の要素を決定し、
前記書込ステップにおいては、前記キャッシュから前記削除対象が削除された後に、前記新たな要素を前記キャッシュに書き込むことを特徴とする請求項５に記載の情報処理方法。
【請求項７】
前記削除対象決定ステップにおいては、前記優先度が最も低い要素を前記削除対象として決定することを特徴とする請求項５に記載の情報処理方法。
【請求項８】
前記第１の要素の中から、予め設定された優先情報を含む第３の要素を特定する第２の特定ステップをさらに含み、
前記キャッシュ優先度決定ステップにおいては、前記第３の要素のキャッシュ優先度を、前記第１の優先度に比べて高い第２の優先度に決定することを特徴とする請求項５又は６に記載の情報処理方法。
【請求項９】
コンピュータを、
構造化文書から、予め設定された優先要素に属する第１の要素を特定する第１の特定手段と、
前記第１の特定手段により特定された前記第１の要素のキャッシュ優先度を、前記第１の要素と異なる第２の要素のキャッシュ優先度に比べて高い第１の優先度に決定するキャッシュ優先度決定手段と、
前記構造化文書に含まれる複数の要素をキャッシュに書き込む書込手段と、
前記要素の前記キャッシュ優先度に基づいて、削除対象の要素を決定する削除対象決定手段と、
前記削除対象の前記要素を前記キャッシュから削除する削除手段と
して機能させるためのプログラム。
【請求項１０】
請求項９に記載のプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、プログラム及び記憶媒体に関する。
【背景技術】
【０００２】
近年、ウェブブラウザ技術は、ＰＣのみならず、スマートフォンを代表とする組込み機器にも搭載されている。ウェブブラウザは、ウェブ上から画面を構成するためのデータ（ＨＴＭＬ、ＪａｖａＳｃｒｉｐｔ（登録商標）、ＪＰＥＧ／ＰＮＧ等）を取得し、ＨＴＭＬの記述に従って部品をレイアウトして画面に表示する。
ウェブブラウザは、ＵＲＬで指定された画像データを取得し、デコード処理した上で、画面に表示する。このとき、一般的に、デコード済のデータはメモリ上にキャッシュされる。それにより、アニメーションなど画像が繰り返し利用される際に、ウェブブラウザは、再度デコードすることなく、デコード済のデータを使用することによって、スムーズなアニメーション表示を行うことができる。
【０００３】
しかしながら、キャッシュメモリの容量は限られているため、効率的なキャッシュ方法が必要となる。効率的にキャッシュする技術として、文書内で参照されるデータを参照場所に応じて分類し、キャッシュメモリに登録する技術が開示されている（特許文献１参照）。
【０００４】
ところで、Ｗ３Ｃで策定されているウィジェット仕様（Ｗｉｄｇｅｔ  Ｐａｃｋａｇｉｎｇ  ａｎｄ  ＸＭＬ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）等に従ったウィジェットが知られている。ウィジェットは、ＨＴＭＬや画像データ等必要なデータをＺＩＰアーカイブでパッケージ化したものであり、ローカルの機器に保持される。そして、ウィジェットは、機器上でウィジェットアプリケーションとして動作する。
また、ウィジェット内のＨＴＭＬファイルは、様々な場所に格納されている画像データを参照することができる。参照されるデータとしては、例えば、ウィジェット内の画像データ、ローカル機器であってウィジェット外に格納された画像データ、ローカル機器外のインターネット上の画像データなどが挙げられる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００８−４６６８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ウィジェット内の画像データは、ウィジェットアプリケーションの背景やアイコン、操作部品として利用されることが多い。このため、ウィジェット内の画像データを即座に表示することは、ユーザの操作性向上につながる。しかしながら、従来技術においては、例えば、ウィジェット内の参照画像（背景、アイコン、操作部品等）を常にキャッシュに置いておく等の処理ができなかった。
【０００７】
本発明はこのような問題点に鑑みなされたもので、キャッシュに残すコンテンツを制御することにより、ユーザの操作性を向上させることを目的とする。
【課題を解決するための手段】
【０００８】
そこで、本発明は、構造化文書から、予め設定された優先要素に属する第１の要素を特定する第１の特定手段と、前記第１の特定手段により特定された前記第１の要素のキャッシュ優先度を、前記第１の要素と異なる第２の要素のキャッシュ優先度に比べて高い第１の優先度に決定するキャッシュ優先度決定手段と、前記構造化文書に含まれる複数の要素をキャッシュに書き込む書込手段と、前記要素の前記キャッシュ優先度に基づいて、削除対象の要素を決定する削除対象決定手段と、前記削除対象の前記要素を前記キャッシュから削除する削除手段とを備えることを特徴とする。
【発明の効果】
【０００９】
本発明によれば、キャッシュに残す要素を制御することにより、ユーザの操作性を向上させることができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理装置を示す図である。
【図２】機器内ファイルデータの一例を示す図である。
【図３】機器内ファイルデータの一例を示す図である。
【図４】ウィジェットデータの表示例を示す図である。
【図５】ＨＴＭＬデータの一例である。
【図６】ＨＴＭＬデータの一例である。
【図７】条件テーブルの一例を示す図である。
【図８】キャッシュ優先度登録処理を示すフローチャートである。
【図９】ｉｍｇ解析処理を示すフローチャートである。
【図１０】キャッシュ優先度決定処理を示すフローチャートである。
【図１１】優先度テーブルの一例を示す図である。
【図１２】キャッシュ処理を示すフローチャートである。
【図１３】条件テーブルの一例を示す図である。
【図１４】ｉｍｇ解析処理を示すフローチャートである。
【図１５】キャッシュ優先度決定処理を示すフローチャートである。
【図１６】優先度テーブルの一例を示す図である。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態について図面に基づいて説明する。
（第１の実施形態）
図１は、第１の実施形態に係る情報処理装置１００を示す図である。ＣＰＵ１０１は、システム制御部であり、情報処理装置１００全体を制御する。ＲＯＭ１０２は、ＣＰＵ１０１の制御プログラムや各種固定データを格納する読取専用のメモリである。ＲＡＭ１０３は、ＳＲＡＭ、ＤＲＡＭ等で構成された書き換え可能なメモリであり、プログラム制御変数等を格納する。ＲＡＭ１０３はまた、各種設定パラメータ、各種ワーク用バッファ等も格納する。
表示部１０４は、ＬＣＤ等を用いてオペレータに表示通知するためのものである。操作部１０５は、キーボードやポインティングデバイス等であり、オペレータによる各種操作入力を受け付ける。システムバス１０６は、各ユニットを通信可能に接続する。
【００１２】
図２は、機器内ファイルデータの一例を示す図である。機器内ファイルデータ２１０は、予めＲＯＭ１０２に保持されている。本実施形態に係る機器内ファイルデータ２１０は、ウィジェットデータ２２０と、撮影データ２３０とを含んでいる。ここで、ウィジェットデータ２２０及び撮影データ２３０は、それぞれ要素の一例である。
ウィジェットは、特定の実行環境で実行される単機能でシンプルなアプリケーションプログラムの総称である。本実施形態に係る情報処理装置１００は、Ｗ３Ｃ勧告のウィジェット仕様（Ｗｉｄｇｅｔ  Ｐａｃｋａｇｉｎｇ  ａｎｄ  ＸＭＬ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ）に従ったウィジェットを扱うこととする。
【００１３】
ウィジェットデータ２２０は、ＨＴＭＬ、ＪａｖａＳｃｒｉｐｔ、画像データ等を有している。図２に示すウィジェットデータ２２０は、４つのＨＴＭＬファイルと１つのｉｍａｇｅｓフォルダを有している。ウィジェットデータ２２０は、さらにｉｍａｇｅｓフォルダ内に８つの画像データを有している。
一方、撮影データ２３０は、情報処理装置１００に付属する撮像装置によって撮像された画像データや、他の機器で撮像され、情報処理装置１００が取得した画像データなどである。本実施形態において、撮影データ２３０は、４つの画像を有している。
【００１４】
ウィジェットデータ２２０は、ＺＩＰアーカイブされた状態でダウンロードされる。情報処理装置１００は、ウィジェットデータ２２０のインストール時に、ウィジェットデータ２２０を展開してもよい。本実施形態においては、ウィジェットデータ２２０が展開された状態でＲＯＭ１０２に保持されているものとする。
情報処理装置１００のＣＰＵ１０１は、ＧＵＩ画面を表示する際に、ＲＯＭ１０２に保持されているウィジェットデータに含まれるＨＴＭＬデータを解析する。そして、ＣＰＵ１０１は、そのＨＴＭＬデータと同じ情報を持つ内部データ形式に変換する。内部データ形式は、ＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）と呼ばれる形式である。ＣＰＵ１０１は、ＤＯＭデータを画像データに変換した上で、表示部１０４に表示する。
なお、後述する情報処理装置１００の機能や処理は、ＣＰＵ１０１がＲＯＭ１０２等に格納されているプログラムを読み出し、このプログラムを実行することにより実現されるものである。
【００１５】
図３は、図２の機器内ファイルデータ２１０をツリー構造で示したものである。３１０は、システムのルートを表している。ルート３１０の直下の層には、「ｃａｍｅｒａ／」のカメラフォルダ３２０と、「ｗｉｄｇｅｔ／」のウィジェットフォルダ３３０とが配置されている。
カメラフォルダ３２０は、「ＪＰＥＧ１．ｊｐｇ」〜「ＪＰＥＧ４．ｊｐｇ」の４つの撮影データ（ＪＰＥＧデータ）を含んでいる。ウィジェットフォルダ３３０は、「ｉｎｄｅｘ．ｈｔｍｌ」、「ａｐｐ１．ｈｔｍｌ」〜「ａｐｐ３．ｈｔｍｌ」の４つのＨＴＭＬファイルと、「ｉｍａｇｅｓ／」の１つのイメージフォルダとを含んでいる。
イメージフォルダは、「ｔｉｔｌｅ１．ｐｎｇ」、「ｔｉｔｌｅ２．ｐｎｇ」、「ａｐｐ１．ｐｎｇ」〜「ａｐｐ３．ｐｎｇ」、「ｂａｃｋ．ｐｎｇ」、「ｐｒｅｖ．ｐｎｇ」、「ｎｅｘｔ．ｐｎｇ」の８つのＰＮＧデータを含んでいる。ここで、ウィジェットフォルダに含まれるデータが、ウィジェットデータである。
ここで、機器内ファイルデータ２１０は、ツリー構造の構造化文書の一例である。機器内ファイルデータ２１０に含まれるウィジェットデータや撮影データなどのデータは、いずれも構造化文書に含まれる要素の一例である。
【００１６】
図４は、ウィジェットデータの表示例を示す図である。図４は、図２及び図３に示すウィジェットデータに対応する表示例である。操作部１０５へのユーザからの操作入力に応じて、表示部１０４の表示は、「ｉｎｄｅｘ．ｈｔｍｌ」の第１の画面４１０と、「ａｐｐ１．ｈｔｍｌ」の第２の画面４２０との間を遷移する。
【００１７】
図５は、第１の画面４１０に対応するＨＴＭＬデータの一例を示す図である。図６は、第２の画面４２０に対応するＨＴＭＬデータの一例を示す図である。
図５に示すＨＴＭＬデータの３行目は、図４に示す第１の画面４１０のアイコン４１１に対応する記述である。３行目は、ｉｄ属性が「ｔｉｔｌｅ１」のｉｍｇ要素を特定している。さらに、ｉｍｇ要素のｓｒｃ属性は「ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」と指定されている。ここで、ｓｒｃ属性は、参照される画像データへのパスを表している。
ここで、パスは、ファイルやフォルダの所在であり、パス情報は、パスを表す文字列である。パスは、ファイルやフォルダのコンピュータ内での在り処である。さらに、パスには、絶対パスと相対パスがある。絶対パスは、ルートディレクトリから目的のフォルダやファイルまでの道筋が記述されたものである。相対パスは、起点となる位置から目的のフォルダファイルまでの道筋が記述されたものである。絶対パスは、「／ｆｏｏ／ｖａｒ／ｈｏｇｅ．ｔｘｔ」のようにルート「／」から記述される。相対パスは、ルート「／」以外の文字を先頭文字として記述される。
【００１８】
例えば、上述のｓｒｃ属性「ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」は、相対パスである。「ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」は、「ｉｎｄｅｘ．ｈｔｍｌ」を含むウィジェットフォルダ「ｗｉｄｇｅｔ／」内のイメージフォルダ「ｉｍａｇｅｓ／」内の画像データ「ｔｉｔｌｅ１．ｐｎｇ」を参照することを示している。
また、「ｉｎｄｅｘ．ｈｔｍｌ」を含むウィジェットフォルダへのパスを示すパス情報は、「／ｗｉｄｇｅｔ／」である。したがって、「ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」の、絶対パスでの表現は、「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」となる。
【００１９】
また、図５に示すＨＴＭＬデータにおいて、ｉｄ属性が「ａｐｐ１」のｉｍｇ要素の親要素がａ要素に指定されている。さらに、ｉｄ属性が「ａｐｐ１」のｉｍｇ要素のｈｒｅｆ属性は、「ａｐｐ１．ｈｔｍｌ」と指定されている。
これらは、図４に示す「Ａｐｐ１」のアイコン４１２に対してクリックなどのイベントが発生した時に、表示部１０４の表示が「ａｐｐ１．ｈｔｍｌ」のＨＴＭＬ文書に遷移することを示している。
同様に、図５に示すＨＴＭＬデータは、図４に示す「Ａｐｐ２」のアイコン４１３又は「Ａｐｐ３」のアイコン４１４をクリックすると、それぞれ「ａｐｐ２．ｈｔｍｌ」又は「ａｐｐ３．ｈｔｍｌ」に遷移することを示している。
【００２０】
次に、図６に示すＨＴＭＬデータについて説明する。図６に示すＨＴＭＬデータの３行目は、図５に示す第２の画面４２０の「Ａｐｐ１」のタイトル４２１に対応する。３行目は、ｉｄ属性が「ｔｉｔｌｅ２」のｉｍｇ要素を特定している。
また、図６に示すＨＴＭＬデータにおいて、ｉｄ属性が「ｃａｍｅｒａ１」〜「ｃａｍｅｒａ４」で指定されるｉｍｇ要素は、それぞれ図４に示す「ＪＰＥＧ１」〜「ＪＰＥＧ４」のアイコン４２２〜４２５に対応する。例えば、「ＪＰＥＧ１」のｉｍｇ要素のｓｒｃ属性は「／ｃａｍｅｒａ／ＪＰＥＧ１．ｊｐｇ」と指定されている。他のｉｍｇ要素も同様である。
【００２１】
また、ｉｄ属性が「ｂａｃｋ」のｉｍｇ要素は、図４のアイコン４２６に対応する。ｉｄ属性が「ｂａｃｋ」のｉｍｇ要素の親要素は、ｈｒｅｆ属性が「ｉｎｄｅｘ．ｈｔｍｌ」で指定されるａ要素である。これは、アイコン４２６に対してクリックなどのイベントが発生した時に、表示部１０４の表示が「ｉｎｄｅｘ．ｈｔｍｌ」のＨＴＭＬ文書に遷移することを示している。
このように図５及び図６に示す２つのＨＴＭＬデータは、「ｉｎｄｅｘ．ｈｔｍｌ」と「ａｐｐ１．ｈｔｍｌ」との間を互いに遷移するアプリケーションを構築することができる。また、上述したようにウィジェット内のＨＴＭＬデータからは、ウィジェット内外の画像データを参照することができる。
【００２２】
図７は、条件テーブルの一例を示す図である。条件テーブルは、予め設定された情報であり、例えばＲＡＭ１０３等に予め格納されているものとする。条件テーブルは、ＣＰＵ１０１が、機器内ファイルデータ２１０に含まれる画像データなどの要素のキャッシュ優先度を決定する際に参照する情報テーブルである。
条件テーブルは、ｉｍｇ要素の条件と、キャッシュ優先度とを対応付けて格納している。図７に示す例においては、ｉｍｇ要素の条件として、「ウィジェット内」及び「ウィジェット外」の２つが登録されている。
【００２３】
ここで、「ウィジェット内」とは、図２に示す機器内ファイルデータ２１０のうち、ウィジェットデータ２２０に属する要素（データ）であることを示している。すなわち、「ウィジェット内」とは、ウィジェットフォルダ３３０の下位の要素（データ）であることを示している。「ウィジェット内」とは、また、処理対象のｉｍｇ要素の絶対パスの文字列の先頭部分にウィジェットパスの絶対パスの文字列を含むことを示している。
条件テーブルにおいてはさらに、「ウィジェット内」及び「ウィジェット外」それぞれに対し、キャッシュ優先度「高」及び「低」が対応付けられている。キャッシュ優先度はＣＰＵ１０１が、キャッシュメモリに存在する要素の中から、削除対象の要素を決定する際に参照される値である。具体的には、ＣＰＵ１０１は、キャッシュ優先度が低い要素を優先的に削除対象として決定する。ここで、図７に示す条件テーブルに登録されているｉｍｇ要素の条件は、優先要素を特定する情報である。
【００２４】
図８は、情報処理装置１００によるキャッシュ優先度登録処理を示すフローチャートである。情報処理装置１００のＣＰＵ１０１は、キャッシュ優先度登録処理において、機器内ファイルデータ２１０内のコンテンツとしての画像データの優先度を登録する。
まず、ＣＰＵ１０１は、ＲＯＭ１０２に格納されているウィジェットのパス情報を取得する（Ｓ７０１）。本実施形態においては、図３に示す通り、ルートの直下にウィジェットフォルダ３３０が配置されている。したがって、Ｓ７０１において、ＣＰＵ１０１は、ウィジェットのパス情報として、絶対パス「／ｗｉｄｇｅｔ／」を取得する。
次に、ＣＰＵ１０１は、ウィジェットフォルダ３３０に含まれる全ＨＴＭＬファイルを取得する（Ｓ７０２）。本実施形態においては、ウィジェットフォルダ３３０に含まれる４つのＨＴＭＬファイル（図２及び図３）を取得する。
【００２５】
次に、ＣＰＵ１０１は、Ｓ７０２で取得した全ＨＴＭＬファイルについて以下の処理を繰り返す（Ｓ７０３）。すなわち、ＣＰＵ１０１は、まず、ＨＴＭＬファイルを解析し、全ｉｍｇ要素を取得する（Ｓ７０４）。
具体的には、ＣＰＵ１０１は、ＨＴＭＬパーサによって、ＨＴＭＬの先頭から解析し、各要素やノードの情報からＤＯＭ（Ｄｏｃｕｍｅｎｔ  Ｏｂｊｅｃｔ  Ｍｏｄｅｌ）ツリーを構築する。さらに、ＣＰＵ１０１は、図５に示す要素名「ｉｎｄｅｘ．ｈｔｍｌ」をキーとして、「ｉｎｄｅｘ．ｈｔｍｌ」に含まれる要素群を取得する。これにより、ＣＰＵ１０１は、４つのｉｍｇ要素を取得する。
【００２６】
次にＣＰＵ１０１は、Ｓ７０４で取得した全ｉｍｇ要素について以下の処理を繰り返す（Ｓ７０５）。すなわち、ＣＰＵ１０１は、ｉｍｇ要素解析処理を行う（Ｓ７０６）。
図９は、ｉｍｇ解析処理を示すフローチャートである。図８に示すように、ＣＰＵ１０１は、ｉｍｇ要素により参照される画像（参照画像）のパス情報を取得する（Ｓ８０１）。具体的には、ＣＰＵ１０１は、Ｓ７０１で取得したウィジェットのパス情報を利用して絶対パスを取得する。この処理によって、ＣＰＵ１０１は、ｉｍｇ要素から参照される画像ファイルがファイルシステム上のどの場所にあるかを特定することができる。
【００２７】
例えば、図５の「ｉｎｄｅｘ．ｈｔｍｌ」のｉｄ属性「ａｐｐ１」で特定されるｉｍｇ要素の場合には、ＣＰＵ１０１は、ｓｒｃ属性値「ｉｍａｇｅｓ／ａｐｐ１．ｐｎｇ」を取得する。ＣＰＵ１０１は、この文字列を解析することで、ｓｒｃ属性が相対パスで指定されていることと、「ｉｎｄｅｘ．ｈｔｍｌ」と同じ階層にある「ｉｍａｇｅｓ」フォルダ内の「ａｐｐ１．ｐｎｇ」を参照していることとを特定することができる。
そして、ＣＰＵ１０１は、Ｓ７０１で取得したウィジェットのパス情報に基づいて、「ａｐｐ１．ｐｎｇ」の絶対パス「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ａｐｐ１．ｐｎｇ」を得る。
【００２８】
次に、図８に戻り、ＣＰＵ１０１は、Ｓ７０６で解析した結果を元にｉｍｇ要素から参照される参照画像のキャッシュ優先度を決定する（Ｓ７０７）。図１０は、キャッシュ優先度決定処理を示すフローチャートである。図９に示すようにＣＰＵ１０１は、まず、Ｓ７０１において取得したウィジェットのパス情報と、Ｓ７０６において取得した参照画像のパス情報とを比較する（Ｓ９０１）。ＣＰＵ１０１は、例えばウィジェットのパス情報「／ｗｉｄｇｅｔ／」と、参照画像のパス情報「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ａｐｐ１．ｐｎｇ」とを比較する。
次に、ＣＰＵ１０１は、参照画像がウィジェットに属する第１の要素か否かを特定する（Ｓ９０２）。具体的には、ＣＰＵ１０１は、参照画像がウィジェットの下位の要素であるか否かを特定する。ここで、ウィジェットは、予め設定された優先要素の一例である。また、Ｓ９０２の処理は、優先要素に属する第１の要素を特定する第１の特定処理の一例である。
【００２９】
具体的には、ＣＰＵ１０１は、参照画像のパス情報の上位にウィジェットのパス情報が含まれている場合に、参照画像がウィジェットに属する要素であると特定する。
例えば、ウィジェットのパス情報「／ｗｉｄｇｅｔ／」と、参照画像のパス情報「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ａｐｐ１．ｐｎｇ」とを比較するとする。この場合には、参照画像のパス情報の上位の「／ｗｉｄｇｅｔ／」がウィジェットのパス情報に一致する。したがって、この場合には、ＣＰＵ１０１は、参照画像がウィジェットに属する要素であると特定する。
また、ｉｄ属性が「ｃａｍｅｒａ１」で特定されるｉｍｇ要素の絶対パスは「／ｃａｍｅｒａ／ＪＰＥＧ１．ｊｐｇ」である。したがって、このｉｍｇ要素の参照画像のパス情報にウィジェットのパス情報「／ｗｉｄｇｅｔ／」は含まれていない。したがって、この場合には、ＣＰＵ１０１は、参照画像がウィジェットに属さないと判断する。
【００３０】
Ｓ９０２において、参照画像がウィジェットに属する場合には、ＣＰＵ１０１は、処理をＳ９０３へ進める。Ｓ９０２において、参照画像がウィジェットに属さない場合には、ＣＰＵ１０１は、処理をＳ９０４へ進める。
Ｓ９０３において、ＣＰＵ１０１は、条件テーブル（図７）を参照し、ウィジェット内に対応付けられているキャッシュ優先度「高」を参照画像のキャッシュ優先度として決定する。
Ｓ９０４において、ＣＰＵ１０１は、条件テーブルを参照し、ウィジェット外に対応付けられているキャッシュ優先度「低」を参照画像のキャッシュ優先度として決定する。
【００３１】
次に、図８に戻り、ＣＰＵ１０１は、ｉｍｇ要素のｉｄ属性値と、キャッシュ優先度とを対応付けてキャッシュ優先度テーブルに格納する（Ｓ７０８）。ここで、キャッシュ優先度テーブルは、例えばＲＡＭ１０３等に格納されているものとする。本実施形態においては、ＣＰＵ１０１は、各キャッシュに対して識別子を割り当て、各識別子とともに、ｉｍｇ要素のｉｄ属性値とＳ７０７で算出したキャッシュ優先度とをキャッシュ優先度テーブルで管理する。
図１１は、ｉｎｄｅｘ．ｈｔｍｌ（図５）及びａｐｐ１．ｈｔｍｌ（図６）に対するキャッシュ優先度登録処理が実行された後のキャッシュ優先度テーブルの一例を示す図である。
【００３２】
図１２は、情報処理装置１００によるキャッシュ処理を示すフローチャートである。キャッシュ処理において、情報処理装置１００は、キャッシュ優先度テーブルに登録されているキャッシュ優先度に基づいて、キャッシュメモリを管理する。
まずＣＰＵ１０１は、ｉｍｇ要素のｓｒｃ属性で指定された画像データを取得する（Ｓ１２０１）。具体的には、ｓｒｃ属性のパス情報を解析して、絶対パスを算出し、通信モジュールを経由して画像データを取得する。
【００３３】
次に、ＣＰＵ１０１は、画像データをデコードする（Ｓ１２０２）。一般に、ＨＴＭＬで参照される画像はＪＰＥＧやＰＮＧなど、あるフォーマットに従ってエンコードされた状態でファイルシステムに保持される。ブラウザエンジンは、これらの画像データを取得した後、各ファイルのフォーマットを解析して、フォーマットに適したデコード処理をして、ブラウザエンジンが処理できる形式に変換する。
次に、ＣＰＵ１０１は、Ｓ１２０２でデコードした画像をキャッシュ可能かどうか判定する（Ｓ１２０３）。具体的には、ＣＰＵ１０１は、処理実行時のキャッシュメモリの空き容量と、デコードした画像の容量を比較して、キャッシュメモリの空き容量が大きければキャッシュ可能と判定する。
【００３４】
Ｓ１２０３において、キャッシュ可能でない場合には、ＣＰＵ１０１は、処理をＳ１２０５へ進める。そして、ＣＰＵ１０１は、優先度が最も低い要素を削除対象として決定し、削除対象の要素をキャッシュメモリから削除する（Ｓ１２０５）。なお、Ｓ１２０５において、ＣＰＵ１０１は、デコードした画像をキャッシュ可能になるまで、削除処理を繰り返し、デコードした画像を格納するだけの空き容量を確保する。ここで、Ｓ１２０５の処理は、削除対象決定処理及び削除処理の一例である。
そして、ＣＰＵ１０１は、キャッシュ可能になった時点で、デコードデータをキャッシュに追加する（Ｓ１２０４）。一方、Ｓ１２０３において、キャッシュ可能である場合には、ＣＰＵ１０１は、処理をＳ１２０４へ進める。ここで、Ｓ１２０４の処理は、書込処理の一例である。
【００３５】
以上のように、本実施形態にかかる情報処理装置１００は、ウィジェットアプリケーションを実行する際に、参照される画像のキャッシュ優先度に応じてキャッシュメモリを管理する。これにより、ウィジェット内の画像を優先的にキャッシュすることが可能になり、アプリケーションに必要なデータを即座に表示できるようになる。このように、情報処理装置１００は、キャッシュに残す要素を制御することにより、ユーザの操作性を向上させることができる。
例えば、処理対象のアプリケーションが、複数画面を遷移するようなＨＴＭＬアプリケーションであるとする。これに対し、本実施形態にかかる情報処理装置１００は、他のＨＴＭＬへのリンクとなる画像や、ＪａｖａＳｃｒｉｐｔの処理が発生する画像のキャッシュ優先度を高く設定することができる。したがって、情報処理装置１００は、複数画面間を遷移した場合にも、操作の対象となるｉｍｇ要素を即座に表示することができる。すなわち、ユーザビリティを向上させることができる。
【００３６】
（第２の実施形態）
次に、第２の実施形態にかかる情報処理装置１００について説明する。第２の実施形態にかかる情報処理装置１００は、ウィジェット内外だけでなく、イベント発生時の設定情報の有無に基づいて、キャッシュ優先度を決定する。以下、第２の実施形態にかかる情報処理装置１００について、第１の実施形態にかかる情報処理装置１００と異なる部分について説明する。
【００３７】
図１３は、第２の実施形態にかかる情報処理装置１００が有する条件テーブルの一例を示す図である。第２の実施形態にかかる条件テーブルにおいては、ｉｍｇ要素の条件として、パス情報と、イベント発生時の設定情報の有無とを示す情報が格納されている。
本実施形態にかかる条件テーブルにおいては、図１３に示すように、「ウィジェット内かつ設定情報有り」に対し、キャッシュ優先度「高」が対応付けられている。また、「ウィジェット内かつ設定情報無し」に対し、キャッシュ優先度「中」が対応付けられている。ここで、設定情報は、予め設定された情報であり、優先情報の一例である。
このように、設定情報有りに対し、設定情報無しに対するキャッシュ優先度に比べて高いキャッシュ優先度が割り当てられている。また、「ウィジェット外」に対し、キャッシュ優先度「低」が対応付けられている。
【００３８】
図１４は、第２の実施形態にかかるｉｍｇ解析処理を示すフローチャートである。第２の実施形態にかかるｉｍｇ解析処理においては、ＣＰＵ１０１は、Ｓ８０１（図９）の処理と同様に、参照する画像のパス情報を取得し（Ｓ１３０１）、その後、イベント発生時の設定情報を取得する（Ｓ１３０２）。
【００３９】
図１５は、第２の実施形態にかかるキャッシュ優先度決定処理を示すフローチャートである。第２の実施形態にかかるキャッシュ優先度決定処理におけるＳ１４０１及びＳ１４０２の処理は、それぞれＳ９０１及びＳ９０２の処理と同様である。
Ｓ１４０２において、参照画像がウィジェットに属さない場合には、ＣＰＵ１０１は、処理をＳ１４０６へ進める。Ｓ１４０６において、ＣＰＵ１０１は、条件テーブルを参照し、ウィジェット外に対応付けられているキャッシュ優先度「低」を参照画像のキャッシュ優先度として決定する。
【００４０】
Ｓ１４０２において参照画像がウィジェットに属する場合には、ＣＰＵ１０１は、処理をＳ１４０３へ進める。Ｓ１４０３において、ＣＰＵ１０１は、処理対象の要素（参照画像）にイベント発生時の設定情報が対応付けられているか否かを特定する。ここで、Ｓ１４０３の処理は、優先情報を含む第３の要素を特定する第２の特定処理の一例である。
Ｓ１４０３において、設定情報がある場合には、ＣＰＵ１０１は、処理をＳ１４０４へ進める。Ｓ１４０４において、ＣＰＵ１０１は、条件テーブルを参照し、ウィジェット内かつ設定情報有りに対応付けられているキャッシュ優先度「高」を参照画像のキャッシュ優先度として決定する。
また、Ｓ１４０３において、設定情報がない場合には、ＣＰＵ１０１は、処理をＳ１４０５へ進める。Ｓ１４０５において、ＣＰＵ１０１は、条件テーブルを参照し、ウィジェット内かつ設定情報無しに対応付けられているキャッシュ優先度「中」を参照画像のキャッシュ優先度として決定する。
【００４１】
次に、図２〜図６に示すウィジェットアプリケーションを処理対象とする場合の各処理について具体的に説明する。まず、ｉｄ属性「ｔｉｔｌｅ１」で特定されるｉｍｇ要素に対するｉｍｇ要素解析処理及びキャッシュ優先度決定処理について説明する。ｉｍｇ要素解析処理（図１４）のＳ１３０１において、ＣＰＵ１０１は、ｉｍｇ要素の絶対パス「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」を得る。
次に、ＣＰＵ１０１は、Ｓ１３０２の処理を行う。ここで、ｉｍｇ要素の先祖要素は、ｂｏｄｙ要素、ｈｔｍｌ要素であるため、ｉｍｇ要素にリンクは設定されていない。また、ｉｍｇ要素に、ｏｎｃｌｉｃｋ属性などイベントハンドラも設定されていない。したがって、Ｓ１３０２において、ＣＰＵ１０１は、イベント発生時の設定情報無しという情報を得る。
【００４２】
続いて、キャッシュ優先度決定処理（図１５）について説明する。Ｓ１４０１において、ウィジェットのパス情報と参照画像のパス情報を比較する。ここで、ウィジェットのパス情報は、「／ｗｉｄｇｅｔ／」であり、参照画像のパス情報は、「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」である。
したがって、Ｓ１４０２において、ＣＰＵ１０１は、参照画像がウィジェットに属する要素であることを特定し、処理をＳ１４０３へ進める。Ｓ１４０３において、イベント発生時の設定情報がないことから、ＣＰＵ１０１は、処理をＳ１４０５へ進める。そして、Ｓ１４０５において、ＣＰＵ１０１は、参照画像のキャッシュ優先度を「中」に決定する。
【００４３】
次に、ｉｄ属性が「ｐｒｅｖ」で特定されるｉｍｇ要素の参照画像に対するｉｍｇ要素解析処理及びキャッシュ優先度決定処理について説明する。ｉｍｇ要素解析処理（図１４）のＳ１３０１において、ＣＰＵ１０１は、参照画像の絶対パス「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ｔｉｔｌｅ１．ｐｎｇ」を得る。
次に、ＣＰＵ１０１は、Ｓ１３０２の処理を行う。ここで、ｉｍｇ要素は、ｏｎｃｌｉｃｋ属性「ｐｒｅｖ（）；」と設定されている。したがって、Ｓ１３０２において、ＣＰＵ１０１は、イベント発生時の設定情報有りという情報を得る。
【００４４】
続いて、キャッシュ優先度決定処理（図１５）について説明する。Ｓ１４０１において、ウィジェットのパス情報と参照画像のパス情報の比較（Ｓ１４０１）では、ウィジェットのパス情報が「／ｗｉｄｇｅｔ／」であり、参照画像のパス情報が「／ｗｉｄｇｅｔ／ｉｍａｇｅｓ／ｐｒｅｖ．ｐｎｇ」である。したがって、Ｓ１４０２において、ＣＰＵ１０１は、参照画像がウィジェットに属する要素であることを特定し、処理をＳ１４０３へ進める。
Ｓ１４０３において、イベント発生時の設定情報があることから、ＣＰＵ１０１は、処理をＳ１４０４へ進める。そして、Ｓ１４０４において、ＣＰＵ１０１は、参照画像のキャッシュ優先度を「高」に決定する。同様に、すべてのｉｍｇ要素に対して処理を行った結果を、図１６に示す。
【００４５】
以上のように、第２の実施形態にかかる情報処理装置１００は、構造化文書における階層位置だけでなく、設定情報の有無に応じてキャッシュ優先度を設定することができる。
なお、第２の実施形態にかかる情報処理装置１００のこれ以外の構成及び処理は、第１の実施形態にかかる情報処理装置１００の構成及び処理と同様である。
【００４６】
なお、本実施形態の第１の変更例としては、情報処理装置１００の処理対象は、ＨＴＭＬのｉｍｇ要素に限定されるものではない。他の例としては、処理対象は、ＳＶＧのｉｍａｇｅ要素や他の構造化文書における画像を参照可能な要素であってもよい。
また、他の例としては、処理対象は、静的に記述されたｉｍｇ要素でなくともよく、例えばＪａｖａＳｃｒｉｐｔ等を用いて動的に追加されたｉｍｇ要素であってもよい。
【００４７】
また、第２の変更例としては、情報処理装置１００は、各要素（画像データ）が記憶されているメモリの種類（ハードディスクとメモリ）に基づいて、キャッシュ優先度を決定してもよい。また他の例としては、情報処理装置１００は、各要素（画像データ）の存在するネットワークエリア（ＬＡＮ内外等）における位置に基づいて、キャッシュ優先度を決定してもよい。
【００４８】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給する。そして、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。また、通常、コンピュータプログラムは、ＣＤＲＯＭ等のコンピュータ可読記憶媒体に記憶されている。そして、コンピュータプログラムは、コンピュータの対応するドライブにセットされ、コピーやインストールの処理が行われることにより、実行可能となる。よって、本発明は当然にそのようなコンピュータ読み取り可能な記憶媒体をもその範疇とすることも明らかである。
【００４９】
以上、上述した各実施形態によれば、キャッシュに残す要素を制御することにより、ユーザの操作性を向上させることができる。
【００５０】
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５１】
１００  情報処理装置、１０１  ＣＰＵ、１０２  ＲＯＭ、１０３  ＲＡＭ、１０４  表示部、１０５  操作部
【図１】
2014219922.tif 000003
【図２】
2014219922.tif 000004
【図３】
2014219922.tif 000005
【図４】
2014219922.tif 000006
【図５】
2014219922.tif 000007
【図６】
2014219922.tif 000008
【図７】
2014219922.tif 000009
【図８】
2014219922.tif 000010
【図９】
2014219922.tif 000011
【図１０】
2014219922.tif 000012
【図１１】
2014219922.tif 000013
【図１２】
2014219922.tif 000014
【図１３】
2014219922.tif 000015
【図１４】
2014219922.tif 000016
【図１５】
2014219922.tif 000017
【図１６】
2014219922.tif 000018