(57)【要約】【課題】ブラウザアプリーションにプラグイン機能モジュールを付加してダウンロードし、プラグイン機能モジュールをブラウザコアから利用できるようにする。【解決手段】ブラウザアプリケーション１２の実行時、ブラウザコア制御部１７は、プラグイン機能モジュール１３のそれぞれについて、機能／機能モジュール対応データベース１８のエントリを書き換える。ブラウザアプリケーション１２の実行時に、ブラウザコア制御部１７は、処理で機能を使用するかどうかを判定し、処理で機能を使用するのであれば、機能ＩＤをキーとして機能／機能モジュール対応データベース１８を検索し、機能ＩＤと対応して登録されているモジュールＩＤを取得し、モジュールＩＤの機能モジュールを実行する。【選択図】　図１
2004145604.tif 000002
【特許請求の範囲】
【請求項１】
ダウンロード可能なブラウザアプリケーションと、該ブラウザアプリケーションにブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールを備えるブラウザコアとからなるブラウザを持つブラウザ端末において、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアと
を有することを特徴とするブラウザ端末。
【請求項２】
ダウンロード可能なブラウザアプリケーションと、該ブラウザアプリケーションにブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールを備えるブラウザコアとからなるブラウザを持つブラウザ端末において、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記プラグイン機能モジュールを汎用機能モジュールとして保存する汎用機能モジュール保存領域と、
前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュール、前記汎用機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアと
を有することを特徴とするブラウザ端末。
【請求項３】
ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記組込み機能モジュールおよび前記プラグイン機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベースと、
前記ブラウザアプリケーションの実行時に、前記プラグイン機能モジュールのそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュールまたは前記プラグイン機能モジュールを実行するブラウザコア制御部と、
前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部と
を有することを特徴とするブラウザ端末。
【請求項４】
ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部と、
前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部と
を有することを特徴とするブラウザ端末。
【請求項５】
ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域と、
前記組込み機能モジュール、前記プラグイン機能モジュールおよび前記汎用機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベースと、
前記ブラウザアプリケーションの実行時に、前記汎用機能モジュールおよび前記プラグイン機能モジュールの順にそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュール、前記プラグイン機能モジュールまたは前記汎用機能モジュールを実行するブラウザコア制御部と、
前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部と
を有することを特徴とするブラウザ端末。
【請求項６】
ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、
プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、
前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域と、
前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子によって前記組込み機能モジュールと同等の機能を持つ汎用機能モジュールが存在するかどうかを問い合わせ、該当する汎用機能モジュールが存在すれば該汎用機能モジュールを実行し、該当する汎用機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部と、
前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部と
を有することを特徴とするブラウザ端末。
【請求項７】
コンピュータを、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、ならびに前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとして機能させるためのブラウザプログラム。
【請求項８】
コンピュータを、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールを汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュール、前記汎用機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとして機能させるためのブラウザプログラム。
【請求項９】
コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記組込み機能モジュールおよび前記プラグイン機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベース、ならびに前記ブラウザアプリケーションの実行時に、前記プラグイン機能モジュールのそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュールまたは前記プラグイン機能モジュールを実行するブラウザコア制御部として機能させるためのブラウザプログラム。
【請求項１０】
コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部として機能させるためのブラウザプログラム。
【請求項１１】
コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記組込み機能モジュール、前記プラグイン機能モジュールおよび前記汎用機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベース、ならびに前記ブラウザアプリケーションの実行時に、前記汎用機能モジュールおよび前記プラグイン機能モジュールの順にそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュール、前記プラグイン機能モジュールまたは前記汎用機能モジュールを実行するブラウザコア制御部として機能させるためのブラウザプログラム。
【請求項１２】
コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子によって前記組込み機能モジュールと同等の機能を持つ汎用機能モジュールが存在するかどうかを問い合わせ、該当する汎用機能モジュールが存在すれば該汎用機能モジュールを実行し、該当する汎用機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部として機能させるためのブラウザプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はブラウザ端末およびブラウザプログラムに関し、特にブラウザ端末およびブラウザプログラムのブラウザ機能の置き換え方式および拡張方式に関する。
【０００２】
【従来の技術】
従来は、携帯電話端末、携帯情報端末、情報家電等のインターネットに接続可能なブラウザ端末に搭載されているブラウザは、一般的に、ＲＯＭ（Ｒｅａｄ　Ｏｎｌｙ　Ｍｅｍｏｒｙ）等の書き換え不可能な領域に格納されていて、変更できないようになっていた。特に、ブラウザ内の組込み機能モジュールは、多くの場合、書き換え不可能な領域に保存されており、これらの機能自体の更新は不可能な場合が多かった。そのため、従来では、ブラウザ端末の出荷後にブラウザにバグが発見されると、対処策としてブラウザ端末の回収という手段がとられていた。
【０００３】
これに対して、ブラウザ端末にブラウザ機能がブラウザコアとして提供され、これを利用するブラウザアプリケーションをダウンロード可能にして、ブラウザ機能を利用した新しいサービスを容易にブラウザ端末に追加できるようにすることが考えられる。
【０００４】
なお、クライアントシステムにＷｅｂブラウザとＷｅｂブラウザ拡張機能部とを備える技術も知られているが、この技術は、Ｗｅｂブラウザ自体の機能を拡張するものではない（例えば、特許文献１参照）。
【０００５】
【特許文献１】
特開平１１−７４０５（第５―６頁、図２）
【０００６】
【発明が解決しようとする課題】
上述した従来の技術では、ブラウザ機能がブラウザコアとして提供され、これを利用するブラウザアプリケーションがダウンロード可能になり、ブラウザ機能を利用した新しいサービスを容易にブラウザ端末に追加できるようになったとしても、提供できるサービスは、ユーザインタフェースの表現力などのブラウザ機能に依存した部分に限られ、ブラウザコアの機能そのものに拡張が必要なブラウザアプリケーションを実現することができないという問題点があった。
【０００７】
また、Ｗｅｂコンテンツを提供するコンテンツプロバイダとしては、ブラウザ端末に組み込まれているブラウザコアの表示レイアウト機能とは異なった独自仕様の表示レイアウト機能を採用したコンテンツを作成したい場合があり、このように新機能の追加ではないが既存の機能の更新を行いたいという要求もあるが、これに対応できないという問題点があった。
【０００８】
さらに、ブラウザ端末内の組込み機能モジュールは、多くの場合、書き換え不可能な領域に保存されており、これらの機能自体の更新は不可能な場合が多く、そのため、ブラウザ端末の出荷後にブラウザにバグが発見されると、対処策としてブラウザ端末の回収という手段がとられていたが、より容易にバグ修正を行うことのできる手段が求められているという課題があった。
【０００９】
本発明の目的は、ブラウザアプリーションをダウンロードする際、ブラウザの新機能、バグ修正用のパッチなどのプラグイン機能モジュールを付加してダウンロードし、それらのプラグイン機能モジュールをブラウザ端末に組み込まれているブラウザコアから利用できるようにしたブラウザ端末を提供することにある。
【００１０】
また、本発明の他の目的は、上記ブラウザ端末を実現するブラウザプログラムを提供することにある。
【００１１】
【課題を解決するための手段】
本発明のブラウザ端末は、ダウンロード可能なブラウザアプリケーションと、該ブラウザアプリケーションにブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールを備えるブラウザコアとからなるブラウザを持つブラウザ端末において、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとを有することを特徴とする。
【００１２】
また、本発明のブラウザ端末は、ダウンロード可能なブラウザアプリケーションと、該ブラウザアプリケーションにブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールを備えるブラウザコアとからなるブラウザを持つブラウザ端末において、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記プラグイン機能モジュールを汎用機能モジュールとして保存する汎用機能モジュール保存領域と、前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュール、前記汎用機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとを有することを特徴とする。
【００１３】
さらに、本発明のブラウザ端末は、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記組込み機能モジュールおよび前記プラグイン機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベースと、前記ブラウザアプリケーションの実行時に、前記プラグイン機能モジュールのそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュールまたは前記プラグイン機能モジュールを実行するブラウザコア制御部と、前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部とを有することを特徴とする。
【００１４】
さらにまた、本発明のブラウザ端末は、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部と、前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部とを有することを特徴とする。
【００１５】
また、本発明のブラウザ端末は、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域と、前記組込み機能モジュール、前記プラグイン機能モジュールおよび前記汎用機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベースと、前記ブラウザアプリケーションの実行時に、前記汎用機能モジュールおよび前記プラグイン機能モジュールの順にそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュール、前記プラグイン機能モジュールまたは前記汎用機能モジュールを実行するブラウザコア制御部と、前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部とを有することを特徴とする。
【００１６】
さらに、本発明のブラウザ端末は、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュールと、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーションと、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域と、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子によって前記組込み機能モジュールと同等の機能を持つ汎用機能モジュールが存在するかどうかを問い合わせ、該当する汎用機能モジュールが存在すれば該汎用機能モジュールを実行し、該当する汎用機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部と、前記ブラウザアプリケーションをダウンロードする際、および前記ブラウザアプリケーションまたは前記ブラウザコアがＷｅｂコンテンツを取得する際にネットワークを介してデータの送受信を行うネットワークインタフェース部とを有することを特徴とする。
【００１７】
一方、本発明のブラウザプログラムは、コンピュータを、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、ならびに前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとして機能させることを特徴とする。
【００１８】
また、本発明のブラウザプログラムは、コンピュータを、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールを汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記ブラウザアプリケーションの実行時に前記プラグイン機能モジュール、前記汎用機能モジュールおよび前記組込み機能モジュールの順に検索して同等の機能を持つ機能モジュールが検索された段階で該機能モジュールを実行するブラウザコアとして機能させることを特徴とする。
【００１９】
さらに、本発明のブラウザプログラムは、コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記組込み機能モジュールおよび前記プラグイン機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベース、ならびに前記ブラウザアプリケーションの実行時に、前記プラグイン機能モジュールのそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュールまたは前記プラグイン機能モジュールを実行するブラウザコア制御部として機能させることを特徴とする。
【００２０】
さらにまた、本発明のブラウザプログラムは、コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部として機能させることを特徴とする。
【００２１】
また、本発明のブラウザプログラムは、コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記組込み機能モジュール、前記プラグイン機能モジュールおよび前記汎用機能モジュールで提供される機能の機能識別子と該機能を実現する機能モジュールのモジュール識別子との対応付けを管理する機能／機能モジュール対応データベース、ならびに前記ブラウザアプリケーションの実行時に、前記汎用機能モジュールおよび前記プラグイン機能モジュールの順にそれぞれについて前記機能／機能モジュール対応データベースのエントリを書き換え、処理で使用する機能ごとに機能モジュールの機能識別子によって前記機能／機能モジュール対応データベースを検索してモジュール識別子を得、該モジュール識別子の前記組込み機能モジュール、前記プラグイン機能モジュールまたは前記汎用機能モジュールを実行するブラウザコア制御部として機能させることを特徴とする。
【００２２】
さらに、本発明のブラウザプログラムは、コンピュータを、ブラウザ機能を実現するために必要な諸機能を提供する組込み機能モジュール、プラグイン機能モジュールを付加してダウンロードされたブラウザアプリケーション、前記プラグイン機能モジュールのモジュール識別子を書き換えて汎用機能モジュールとして保存する汎用機能モジュール保存領域、前記ブラウザアプリケーションの実行時に、処理で使用する機能ごとに機能モジュールの機能識別子によって前記組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせ、該当するプラグイン機能モジュールが存在すれば該プラグイン機能モジュールを実行し、該当するプラグイン機能モジュールが存在しなければ該機能識別子によって前記組込み機能モジュールと同等の機能を持つ汎用機能モジュールが存在するかどうかを問い合わせ、該当する汎用機能モジュールが存在すれば該汎用機能モジュールを実行し、該当する汎用機能モジュールが存在しなければ該機能識別子の前記組込み機能モジュールを実行するブラウザコア制御部として機能させることを特徴とする。
【００２３】
本発明のブラウザ端末では、後からダウンロード可能なブラウザアプリケーションにブラウザ機能を提供するためのブラウザコアを持つブラウザ端末において、ブラウザアプリーションをダウンロードする際、ブラウザの新機能、バグ修正用のパッチなどを提供するプラグイン機能モジュールを付加してダウンロードし、それらの機能モジュールをブラウザ端末に組み込まれているブラウザコアから利用できることを特徴としている。
【００２４】
【発明の実施の形態】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００２５】
［第１の実施の形態］
図１は、本発明の第１の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。本実施の形態に係るブラウザ端末１０は、ブラウザコア１１と、ブラウザアプリケーション１２と、ブラウザアプリケーション１２に付加されたプラグイン機能モジュール１３と、ネットワークインタフェース部１５とから、その主要部が構成されている。
【００２６】
ブラウザコア１１は、ブラウザ機能を実現するために必要な、Ｗｅｂコンテンツの取得、コンテンツのパース処理、パース処理で生成されたオブジェクトツリーの操作、表示レイアウトの制御などの諸機能のそれぞれに相当する組込み機能モジュール１６と、これら組込み機能モジュール１６を制御するブラウザコア制御部１７と、機能／機能モジュール対応データベース１８とから構成される。
【００２７】
組込み機能モジュール１６は、ブラウザアプリケーション１２にブラウザ機能を実現するために必要な諸機能を提供するものであり、一般的にＲＯＭ等の書き換え不可能な領域に格納されている。組込み機能モジュール１６には、その機能を一意に識別するための機能識別子と、組込み機能モジュール１６自身を一意に識別するためのモジュール識別子とが含まれているものとする。なお、第１の実施の形態においては、機能の機能識別子として機能ＩＤ、組込み機能モジュール自身のモジュール識別子としてモジュールＩＤを利用するものとする（以下の実施の形態でも同様）。
【００２８】
ブラウザアプリケーション１２は、ユーザに対してブラウザ機能を利用したサービスを提供するためのアプリケーションであり、ネットワークインタフェース部１５を通じてダウンロードされてＤＲＡＭ（Ｄｙｎａｍｉｃ　Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）、ＳＲＡＭ（Ｓｔａｔｉｃ　Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）等の書き換え可能な領域に格納される。ブラウザアプリケーション１２には、０個以上のプラグイン機能モジュール１３が付加されている。
【００２９】
プラグイン機能モジュール１３は、ブラウザの新機能、バグ修正用のパッチなどを提供するものであり、ブラウザアプリケーション１２と同様に、ＤＲＡＭ、ＳＲＡＭ等の書き換え可能な領域に格納される。プラグイン機能モジュール１３には、組込み機能モジュール１６と同様に、その機能を一意に識別するための機能ＩＤと、機能モジュール自身を一意に識別するためのモジュールＩＤとが含まれているものとする。
【００３０】
ネットワークインタフェース部１５は、ブラウザアプリケーション１２のダウンロードを行う際、およびブラウザアプリケーション１２もしくはブラウザコア１１がＷｅｂコンテンツを取得する際に、ネットワーク（図示せず）を介してデータの送受信を行う。
【００３１】
機能／機能モジュール対応データベース１８は、組込み機能モジュール１６およびプラグイン機能モジュール１３で提供される機能の機能ＩＤと、その機能を実現する機能モジュールのモジュールＩＤとの対応付けを管理しているデータベースである（図３および図４参照）。
【００３２】
図２を参照すると、ブラウザコア制御部１７の処理は、データベースエントリ書き換えステップＳ１０１と、機能使用判定ステップＳ１０２と、該当機能モジュール有無判定ステップＳ１０３と、該当機能モジュール実行ステップＳ１０４とからなる。
【００３３】
図３は、ブラウザコア制御部１７がブラウザアプリケーション１２の実行時にプラグイン機能モジュール１３のそれぞれについて機能／機能モジュール対応データベース１８のエントリ書き換えを行う様子を説明する図である。
【００３４】
図４は、ブラウザアプリケーション１２の実際の実行処理が行われる際に機能／機能モジュール対応データベース１８を参照して登録されている機能ＩＤおよびモジュールＩＤに該当する機能モジュールを実行する様子を説明する図である。
【００３５】
次に、このように構成された第１の実施の形態に係るブラウザ端末１０の動作について、図１ないし図４を参照しながら説明する。
【００３６】
ブラウザアプリケーション１２の実行時、ブラウザコア制御部１７は、プラグイン機能モジュール１３のそれぞれについて、機能／機能モジュール対応データベース１８のエントリ書き換えを行う（ステップＳ１０１）。詳しくは、プラグイン機能モジュール１３の提供する機能をブラウザコア１１が組込み機能モジュール１６として持っておらず、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていないのであれば、新規エントリとして、そのプラグイン機能モジュール１３の機能ＩＤおよびモジュールＩＤを機能／機能モジュール対応データベース１８に登録する。逆に、そのプラグイン機能モジュール１３の機能をブラウザコア１１が組込み機能モジュール１６として持っており、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていれば、そのエントリのモジュールＩＤを現在の組込み機能モジュール１６のモジュールＩＤから、該当するプラグイン機能モジュール１３のモジュールＩＤに書き換える。
【００３７】
例えば、図３▲１▼に示すように、各組込み機能モジュール１６の機能ＩＤおよびモジュールＩＤが（Ｆ１，Ｅ１），（Ｆ２，Ｅ２），（Ｆ３，Ｅ３），（Ｆ４，Ｅ４），（Ｆ５，Ｅ５）であり、各プラグイン機能モジュール１３の機能ＩＤおよびモジュールＩＤが（Ｆ１，Ａ１），（Ｆ７，Ａ２），（Ｆ５，Ａ３）である場合、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第１および第５エントリを（Ｆ１，Ａ１），（Ｆ５，Ａ３）に書き換えるとともに、第６エントリに（Ｆ７，Ａ２）を登録する。
【００３８】
その後、ブラウザアプリケーション１２の実際の実行処理が行われると、ブラウザコア制御部１７は、処理で機能を使用するかどうかを判定し（ステップＳ１０２）、処理で機能を使用するのであれば、機能ＩＤをキーとして機能／機能モジュール対応データベース１８を検索し（ステップＳ１０３）、この機能ＩＤと対応して登録されているモジュールＩＤを取得し、このモジュールＩＤの機能モジュールを実行する（ステップＳ１０４）。
【００３９】
例えば、図４▲２▼に示すように、処理で使用する機能の機能ＩＤがＦ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５，Ｆ７であるとすると、まず、機能ＩＤ＝Ｆ１の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能ＩＤ＝Ｆ１をキーとして機能／機能モジュール対応データベース１８の第１エントリ（Ｆ１，Ａ１）を検索して、モジュールＩＤ＝Ａ１のプラグイン機能モジュール１３を実行する。次に、機能ＩＤ＝Ｆ２の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能ＩＤ＝Ｆ２をキーとして機能／機能モジュール対応データベース１８の第２エントリ（Ｆ２，Ｅ２）を検索して、モジュールＩＤ＝Ｅ２の組込み機能モジュール１６を実行する。このようにして、処理で使用する機能の機能ＩＤがＦ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５，Ｆ７であれば、モジュールＩＤ＝Ａ１，Ｅ２，Ｅ３，Ｅ４，Ａ３，Ａ２のプラグイン機能モジュール１３または組込み機能モジュール１６が実行される。
【００４０】
第１の実施の形態によれば、ブラウザコア１１に組込み機能モジュール１６として含まれていない機能モジュールをプラグイン機能モジュール１３として付加したブラウザアプリケーション１２をダウンロードすることにより、ブラウザ端末１０にブラウザコア１１として組み込まれていない機能を新規に追加することができる。
【００４１】
また、組込み機能モジュール１６と機能は同等であるものの動作詳細が異なる機能モジュールをプラグイン機能モジュール１３としてブラウザアプリケーション１２に付加することにより、ブラウザアプリケーション１２ごとに機能のカスタマイズが実現できる。これにより、例えば、コンテンツプロバイダが、ブラウザコア１１が提供している表示レイアウト機能を変更したい場合、そのコンテンツプロバイダ独自の表示レイアウト機能モジュールをプラグイン機能モジュール１３としてブラウザアプリケーション１２に付加することで、独自の表示レイアウトを提供することも可能である。
【００４２】
さらに、ブラウザコア１１の組込み機能モジュール１６にバグが発見された場合、バグ修正パッチをプラグイン機能モジュール１３としてブラウザアプリケーション１２に付加させることにより、容易にバグ修正が可能となる。これにより、ブラウザ端末１０のベンダは、ブラウザ端末１０の販売開始後に発見されたバグに対しても、ブラウザ端末１０の回収ではなく、バグ修正パッチをプラグイン機能モジュール１３として付加したブラウザアプリケーション１２を配布することで対応可能となる。
【００４３】
［第２の実施の形態］
図５は、本発明の第２の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。本実施の形態に係るブラウザ端末１０は、図１に示した第１の実施の形態に係るブラウザ端末１０から機能／機能モジュール対応データベース１８を不要としたものであり、ブラウザコア１１が、ブラウザ機能を実現するために必要な諸機能のそれぞれに相当する組込み機能モジュール１６と、これら組込み機能モジュール１６を制御するブラウザコア制御部１７とから構成される。
【００４４】
なお、その他の特に言及しない部分については、図１に示した第１の実施の形態に係るブラウザ端末１０における対応部分と同様に構成されて同様に動作するので、同一符号を付して、それらの詳しい説明を省略する。
【００４５】
図６を参照すると、第２の実施の形態におけるブラウザコア制御部１７の処理は、機能使用判定ステップＳ２０１と、該当プラグイン機能モジュール有無判定ステップＳ２０２と、該当プラグイン機能モジュール実行ステップＳ２０３と、該当組込み機能モジュール有無判定ステップＳ２０４と、該当組込み機能モジュール実行ステップＳ２０５とからなる。
【００４６】
図７は、ブラウザコア制御部１７が組込み機能モジュール１６と同等の機能を持つプラグイン機能モジュール１３が存在するかどうかを問い合わせる様子を説明する図である。ここでは、処理で使用する機能モジュールについて、プラグイン機能モジュール１３および組込み機能モジュール１６の順に検索し、検索された段階でその機能モジュールを実行する。
【００４７】
次に、このように構成された第２の実施の形態に係るブラウザ端末１０の動作について、図５ないし図７を参照しながら説明する。
【００４８】
ブラウザアプリケーション１２の実行時、ブラウザコア制御部１７は、処理で機能を使用するかどうかを判定し（ステップＳ２０１）、処理で機能を使用するのであれば、機能ＩＤの組込み機能モジュール１６を実行する前に、その組込み機能モジュール１６と同等の機能である、同じ機能ＩＤのプラグイン機能モジュール１３が存在するかどうかを、ブラウザアプリケーション１２に問い合わせる（ステップＳ２０２）。
【００４９】
問い合わせの結果、同じ機能ＩＤのプラグイン機能モジュール１３が存在すれば、ブラウザコア制御部１７は、返されたモジュールＩＤのプラグイン機能モジュール１３を実行する（ステップＳ２０３）。
【００５０】
問い合わせの結果、同じ機能ＩＤのプラグイン機能モジュール１３が存在しなければ、ブラウザコア制御部１７は、呼び出された機能ＩＤの組込み機能モジュール１６をそのまま実行する（ステップＳ２０４、Ｓ２０５）。
【００５１】
例えば、図７に示すように、処理で使用する機能の機能ＩＤがＦ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５，Ｆ７であるとすると、まず、機能ＩＤ＝Ｆ１の機能モジュールが使用されるので、ブラウザコア制御部１７は、モジュールＩＤ＝Ａ１を問い合わせの結果として得て、モジュールＩＤ＝Ａ１のプラグイン機能モジュール１３を実行する。次に、機能ＩＤ＝Ｆ２の機能モジュールが使用されるので、ブラウザコア制御部１７は、該当するプラグイン機能モジュール１３が存在しない旨を問い合わせの結果として得て、機能ＩＤ＝Ｆ１（モジュールＩＤ＝Ｅ２）の組込み機能モジュール１６をそのまま実行する。このようにして、処理で使用する機能が機能ＩＤ＝Ｆ１，Ｆ２，Ｆ３，Ｆ４，Ｆ５，Ｆ７であれば、モジュールＩＤ＝Ａ１，Ｅ２，Ｅ３，Ｅ４，Ａ３，Ａ２のプラグイン機能モジュール１３または組込み機能モジュール１６が実行される。
【００５２】
第２の実施の形態によれば、こうした手順を、組込み機能モジュール１６が呼び出されるたびに行うことで、組込み機能モジュール１６またはそれと同等の機能を持つプラグイン機能モジュール１３が実行されて処理が進んでいくことになるので、機能／機能モジュール対応データベース１８がなくても、第１の実施の形態と同等の実行処理を実現することができる。
【００５３】
［第３の実施の形態］
図８は、本発明の第３の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。本実施の形態に係るブラウザ端末１０は、図１に示した第１の実施の形態に係るブラウザ端末１０に対して、汎用機能モジュール保存領域１４を追加するようにしたものである。
【００５４】
汎用機能モジュール保存領域１４は、ＤＲＡＭ、ＳＲＡＭ等の書き換え可能な領域でなり、特定のブラウザアプリケーション１２からだけでなく、全てのブラウザアプリケーション１２から使用したいプラグイン機能モジュール１３を汎用機能モジュールとしてインストールしておくための保存領域である。
【００５５】
なお、その他の特に言及しない部分については、図１に示した第１の実施の形態に係るブラウザ端末１０における対応部分と同様に構成されて同様に動作するので、同一符号を付して、それらの詳しい説明を省略する。
【００５６】
図９を参照すると、第３の実施の形態におけるブラウザコア制御部１７の処理は、プラグイン機能モジュールインストールステップＳ３０１と、モジュールＩＤ修正ステップＳ３０２と、汎用機能モジュールのデータベースエントリ書き換えステップＳ３０３と、プラグイン機能モジュールのデータベースエントリ書き換えステップＳ３０４と、機能使用判定ステップＳ３０５と、該当機能モジュール有無判定ステップＳ３０６と、該当機能モジュール実行ステップＳ３０７とからなる。
【００５７】
図１０は、プラグイン機能モジュール１３のうち、全てのブラウザアプリケーション１２で利用したいプラグイン機能モジュール１３を汎用機能モジュールとして汎用機能モジュール保存領域１４にインストールし、汎用機能モジュールのそれぞれについて機能／機能モジュール対応データベースのエントリ書き換えを行う様子を説明する図である。
【００５８】
図１１は、別のブラウザアプリケーション１２の実行時に実行されるブラウザアプリケーション１２のプラグイン機能モジュール１３のそれぞれについて機能／機能モジュール対応データベース１８のエントリ書き換えを行う様子を説明する図である。
【００５９】
図１２は、ブラウザアプリケーション１２の実際の実行処理を行う際に機能モジュールの呼び出しで機能／機能モジュール対応データベース１８を参照して登録されているモジュールＩＤに該当する機能モジュールが呼び出される様子を説明する図である。
【００６０】
次に、このように構成された第３の実施の形態に係るブラウザ端末１０の動作について、図８ないし図１２を参照しながら説明する。
【００６１】
ブラウザアプリケーション１２に付加されてダウンロードされているプラグイン機能モジュール１３のうち、全てのブラウザアプリケーション１２で利用したいプラグイン機能モジュール１３が汎用機能モジュールとして汎用機能モジュール保存領域１４にインストールされると（ステップＳ３０１）、ブラウザコア制御部１７は、インストールされた汎用機能モジュールのモジュールＩＤを書き換えて汎用機能モジュール保存領域１４に保存する（ステップＳ３０２）。
【００６２】
例えば、図１０▲１▼に示すように、機能ＩＤおよびモジュールＩＤが（Ｆ１，Ａ１），（Ｆ７，Ａ２），（Ｆ５，Ａ３）であるプラグイン機能モジュール１３を汎用機能モジュール保存領域１４にインストールすると、ブラウザコア制御部１７は、図１０▲２▼に示すように、モジュールＩＤをＧ１，Ｇ２，Ｇ３にそれぞれ変更して、機能ＩＤおよびモジュールＩＤが（Ｆ１，Ｇ１），（Ｆ７，Ｇ２），（Ｆ５，Ｇ３）である汎用機能モジュールとして汎用機能モジュール保存領域１４に保存する。
【００６３】
次に、ブラウザコア制御部１７は、汎用機能モジュールのそれぞれについて、機能／機能モジュール対応データベース１８のエントリ書き換えを行う（ステップＳ３０３）。詳しくは、インストールされた汎用機能モジュールの提供する機能をブラウザコア１１が組込み機能モジュール１６として持っておらず、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていないのであれば、新規エントリとして、その機能モジュールの機能ＩＤおよびモジュールＩＤを機能／機能モジュール対応データベース１８に登録する。逆に、その汎用機能モジュールの機能をブラウザコア１１が組込み機能モジュール１６として持っており、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていれば、そのエントリのモジュールＩＤを現在の組込み機能モジュール１６のモジュールＩＤから、該当するプラグイン機能モジュール１３のモジュールＩＤに書き換える。
【００６４】
例えば、図１０▲３▼に示すように、機能／機能モジュール対応データベース１８の各エントリの機能ＩＤおよびモジュールＩＤが（Ｆ１，Ｅ１），（Ｆ２，Ｅ２），（Ｆ３，Ｅ３），（Ｆ４，Ｅ４），（Ｆ５，Ｅ５）であり、汎用機能モジュール保存領域１４の各汎用機能モジュールの機能ＩＤおよびモジュールＩＤが（Ｆ１，Ｇ１），（Ｆ７，Ｇ２），（Ｆ５，Ｇ３）である場合、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第１および第５エントリを（Ｆ１，Ｇ１），（Ｆ５，Ｇ３）に書き換えるとともに、第６エントリに（Ｆ７，Ｇ２）を登録する。
【００６５】
この後、異なるプラグイン機能モジュール１３を付加した別のブラウザアプリケーション１２がダウンロードされて、このブラウザアプリケーション１２が実行される時には、ブラウザコア制御部１７は、プラグイン機能モジュール１３のそれぞれについて、機能／機能モジュール対応データベース１８のエントリ書き換えを行う（ステップＳ３０４）。詳しくは、プラグイン機能モジュール１３の提供する機能をブラウザコア１１が組込み機能モジュール１６または汎用機能モジュールとして持っておらず、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていないのであれば、新規エントリとして、その機能モジュールの機能ＩＤおよびモジュールＩＤを機能／機能モジュール対応データベース１８に登録する。逆に、そのプラグイン機能モジュール１３の機能をブラウザコア１１が組込み機能モジュール１６または汎用機能モジュールとして持っており、その機能のエントリが機能／機能モジュール対応データベース１８に登録されていれば、そのエントリのモジュールＩＤを現在の組込み機能モジュール１６または汎用機能モジュールのモジュールＩＤから、該当するプラグイン機能モジュール１３のモジュールＩＤに書き換える。
【００６６】
例えば、図１１▲４▼に示すように、機能／機能モジュール対応データベース１８の各エントリが（Ｆ１，Ｇ１），（Ｆ２，Ｅ２），（Ｆ３，Ｅ３），（Ｆ４，Ｅ４），（Ｆ５，Ｇ３），（Ｆ７，Ｇ２）であり、各プラグイン機能モジュール１３の機能ＩＤおよびモジュールＩＤが（Ｆ１，Ａ１），（Ｆ２，Ａ２），（Ｆ４，Ａ３）である場合、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第１，第２および第４エントリを（Ｆ１，Ａ１），（Ｆ２，Ａ２），（Ｆ４，Ａ３）に書き換える。
【００６７】
その後、ブラウザアプリケーション１２の実際の実行処理が行われると、ブラウザコア制御部１７は、処理で機能を使用するかどうかを判定し（ステップＳ３０５）、処理で機能を使用するのであれば、機能ＩＤをキーとして機能／機能モジュール対応データベース１８を検索し（ステップＳ３０６）、この機能ＩＤと対応して登録されているモジュールＩＤを取得し、このモジュールＩＤの機能モジュールを実行する（ステップＳ３０７）。
【００６８】
例えば、図１２▲５▼に示すように、処理で使用する機能の機能ＩＤがＦ１，Ｆ２，Ｆ４，Ｆ７であるとすると、まず、機能ＩＤ＝Ｆ１の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第１エントリ（Ｆ１，Ａ１）を参照して、モジュールＩＤ＝Ａ１のプラグイン機能モジュール１３を実行する。次に、機能ＩＤ＝Ｆ２の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第２エントリ（Ｆ２，Ａ２）を参照して、モジュールＩＤ＝Ａ２のプラグイン機能モジュール１３を実行する。さらに、機能ＩＤ＝Ｆ４の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第４エントリ（Ｆ４，Ａ３）を参照して、モジュールＩＤ＝Ａ３のプラグイン機能モジュール１３を実行する。さらにまた、機能ＩＤ＝Ｆ７の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能／機能モジュール対応データベース１８の第６エントリ（Ｆ７，Ｇ２）を参照して、モジュールＩＤ＝Ｇ２の汎用機能モジュールを実行する。よって、処理で使用する機能が機能ＩＤ＝Ｆ１，Ｆ２，Ｆ４，Ｆ７であれば、モジュールＩＤ＝Ａ１，Ａ２，Ａ３，Ｇ２のプラグイン機能モジュール１３または汎用機能モジュールが実行される。なお、例えば、機能ＩＤ＝Ｆ３の機能モジュールが呼び出されたときには、モジュールＩＤ＝Ｅ３の組込み機能モジュール１６が実行されることはもちろんである。
【００６９】
第３の実施の形態によれば、汎用機能モジュール保存領域１４を設けることにより、ブラウザコア１１のバグ修正用機能モジュールなど、特定のブラウザアプリケーション１２からだけでなく、どのブラウザアプリケーション１２からも使用したい機能モジュールを汎用機能モジュールとして組み込むことができ、全てのブラウザアプリケーション１２から利用することが可能になる。
【００７０】
［第４の実施の形態］
図１３は、本発明の第４の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。本実施の形態に係るブラウザ端末１０は、図８に示した第３の実施の形態に係るブラウザ端末１０から機能／機能モジュール対応データベース１８を不要としたものであり、ブラウザコア１１が、ブラウザ機能を実現するために必要な諸機能のそれぞれに相当する組込み機能モジュール１６と、これら組込み機能モジュール１６を制御するブラウザコア制御部１７とから構成される。
【００７１】
なお、その他の特に言及しない部分については、図８に示した第３の実施の形態に係るブラウザ端末１０における対応部分と同様に構成されて同様に動作するので、同一符号を付して、それらの詳しい説明を省略する。
【００７２】
図１４を参照すると、第４の実施の形態におけるブラウザコア制御部１７の処理は、プラグイン機能モジュールインストールステップＳ４０１と、モジュールＩＤ修正ステップＳ４０２と、機能使用判定ステップＳ４０３と、該当プラグイン機能モジュール有無判定ステップＳ４０４と、該当プラグイン機能モジュール実行ステップＳ４０５と、該当汎用機能モジュール有無判定ステップＳ４０６と、該当汎用機能モジュール実行ステップＳ４０７と、該当組込み機能モジュール有無判定ステップＳ４０８と、該当組込み機能モジュール実行ステップＳ４０９とからなる。
【００７３】
図１５は、ブラウザ端末１０内に汎用機能モジュール保存領域１４を設け、プラグイン機能モジュール１３のうち、全てのブラウザアプリケーション１２で利用したい機能モジュールを汎用機能モジュールとしてインストールしておく様子を説明する図である。
【００７４】
図１６は、ブラウザコア制御部１７が組込み機能モジュール１６と同等の機能を持つ汎用機能モジュールが存在するかどうかを汎用機能モジュール保存領域１４に問い合わせる様子を説明する図である。
【００７５】
次に、このように構成された第４の実施の形態に係るブラウザ端末１０の動作について、図１３ないし図１６を参照しながら説明する。
【００７６】
ブラウザアプリケーション１２に付加されてダウンロードされているプラグイン機能モジュール１３のうち、全てのブラウザアプリケーション１２で利用したいプラグイン機能モジュール１３が汎用機能モジュールとして汎用機能モジュール保存領域１４にインストールされると（ステップＳ４０１）、ブラウザコア制御部１７は、インストールされた汎用機能モジュールのモジュールＩＤを書き換えて汎用機能モジュール保存領域１４に保存する（ステップＳ４０２）。
【００７７】
例えば、図１５▲１▼に示すように、機能ＩＤおよびモジュールＩＤが（Ｆ１，Ａ１），（Ｆ７，Ａ２），（Ｆ５，Ａ３）であるプラグイン機能モジュール１３を汎用機能モジュール保存領域１４にインストールすると、ブラウザコア制御部１７は、図１５▲２▼に示すように、モジュールＩＤをＧ１，Ｇ２，Ｇ３にそれぞれ変更して、機能ＩＤおよびモジュールＩＤが（Ｆ１，Ｇ１），（Ｆ７，Ｇ２），（Ｆ５，Ｇ３）である汎用機能モジュールとする。
【００７８】
その後、別のブラウザアプリケーション１２の実行時には、ブラウザコア制御部１７は、処理で機能を使用するかどうかを判定し（ステップＳ４０３）、処理で機能を使用するのであれば、機能ＩＤの組込み機能モジュール１６を実行する前に、その組込み機能モジュール１６と同等の機能である、同じ機能ＩＤのプラグイン機能モジュール１３が存在するかどうかを、ブラウザアプリケーション１２に問い合わせる（ステップＳ４０４）。
【００７９】
問い合わせの結果、同じ機能ＩＤのプラグイン機能モジュール１３が存在すれば（ステップＳ４０４）、ブラウザコア制御部１７は、返されたモジュールＩＤのプラグイン機能モジュール１３を実行する（ステップＳ４０５）。
【００８０】
問い合わせの結果、同じ機能ＩＤのプラグイン機能モジュール１３が存在しなければ、ブラウザコア制御部１７は、同じ機能ＩＤの汎用機能モジュールが汎用機能モジュール保存領域１４に存在するかどうかを検索し（ステップＳ４０６）、同じ機能ＩＤの汎用機能モジュールが存在すれば、ブラウザコア制御部１７は、検索されたモジュールＩＤの汎用機能モジュールを実行する（ステップＳ４０７）。
【００８１】
検索の結果、同じ機能ＩＤの汎用機能モジュールが存在しなければ、ブラウザコア制御部１７は、呼び出された機能ＩＤの組込み機能モジュール１６をそのまま実行する（ステップＳ４０８、Ｓ４０９）。
【００８２】
例えば、図１６▲３▼に示すように、処理で使用する機能の機能ＩＤがＦ１，Ｆ２，Ｆ４，Ｆ７であるとすると、まず、機能ＩＤ＝Ｆ１の機能モジュールが使用されるので、ブラウザコア制御部１７は、プラグイン機能モジュール１３が存在するかどうかを問い合わせ、モジュールＩＤ＝Ａ１が返されるので、モジュールＩＤ＝Ａ１のプラグイン機能モジュール１３を実行する。次に、機能ＩＤ＝Ｆ２の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能ＩＤ＝Ｆ２のプラグイン機能モジュール１３が存在するかどうかを問い合わせ、モジュールＩＤ＝Ａ２が返されるので、モジュールＩＤ＝Ａ２のプラグイン機能モジュール１３を実行する。続いて、機能ＩＤ＝Ｆ４の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能ＩＤ＝Ｆ４のプラグイン機能モジュール１３が存在するかどうかを問い合わせ、モジュールＩＤ＝Ａ３が返されるので、モジュールＩＤ＝Ａ３のプラグイン機能モジュール１３を実行する。次に、機能ＩＤ＝Ｆ７の機能モジュールが使用されるので、ブラウザコア制御部１７は、機能ＩＤ＝Ｆ７のプラグイン機能モジュール１３が存在するかどうかを問い合わせ、機能ＩＤ＝Ｆ７のプラグイン機能モジュール１３が存在しない旨が返されるので、さらに機能ＩＤ＝Ｆ７の汎用機能モジュールが汎用機能モジュール保存領域１４に存在するかどうかを検索し、モジュールＩＤ＝Ｇ２を得て、モジュールＩＤ＝Ｇ２の汎用機能モジュールを実行する。よって、処理で使用する機能が機能ＩＤ＝Ｆ１，Ｆ２，Ｆ４，Ｆ７であれば、モジュールＩＤ＝Ａ１，Ａ２，Ａ３，Ｇ２のプラグイン機能モジュール１３または汎用機能モジュールが実行される。なお、例えば、機能ＩＤ＝Ｆ３の機能モジュールが呼び出されたときには、モジュールＩＤ＝Ｅ３の組込み機能モジュール１６が実行されることはもちろんである。
【００８３】
第４の実施の形態によれば、機能／機能モジュール対応データベース１８がなくても、第３の実施の形態におけるのと同等の実行処理を実現することができる。
【００８４】
［第５の実施の形態］
図１７は、本発明の第５の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。図１７を参照すると、本発明の第５の実施の形態に係るブラウザ端末１０は、図１に示した第１の実施の形態に係るブラウザ端末１０に対して、ブラウザプログラム１００を備える点が異なっている。
【００８５】
ブラウザプログラム１００は、コンピュータでなるブラウザ端末１０に読み込まれ、当該ブラウザ端末１０の動作をブラウザコア１１（組込み機能モジュール１６、ブラウザコア制御部１７、機能／機能モジュール対応データベース１８）と、ブラウザアプリケーション１２と、プラグイン機能モジュール１３として制御する。ブラウザプログラム１００の制御によるブラウザ端末１０の動作は、図１に示した第１の実施の形態に係るブラウザ端末１０の動作と全く同様になるので、その詳しい説明を割愛する。
【００８６】
［第６の実施の形態］
図１８は、本発明の第６の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。図１８を参照すると、本発明の第６の実施の形態に係るブラウザ端末１０は、図１に示した第１の実施の形態に係るブラウザ端末１０に対して、ブラウザプログラム２００を備える点が異なっている。
【００８７】
ブラウザプログラム２００は、コンピュータでなるブラウザ端末１０に読み込まれ、当該ブラウザ端末１０の動作をブラウザコア１１（組込み機能モジュール１６、ブラウザコア制御部１７）と、ブラウザアプリケーション１２と、プラグイン機能モジュール１３として制御する。ブラウザプログラム２００の制御によるブラウザ端末１０の動作は、図５に示した第２の実施の形態に係るブラウザ端末１０の動作と全く同様になるので、その詳しい説明を割愛する。
【００８８】
［第７の実施の形態］
図１９は、本発明の第７の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。図１９を参照すると、本発明の第７の実施の形態に係るブラウザ端末１０は、図８に示した第３の実施の形態に係るブラウザ端末１０に対して、ブラウザプログラム３００を備える点が異なっている。
【００８９】
ブラウザプログラム３００は、コンピュータでなるブラウザ端末１０に読み込まれ、当該ブラウザ端末１０の動作をブラウザコア１１（組込み機能モジュール１６、ブラウザコア制御部１７、機能／機能モジュール対応データベース１８）と、ブラウザアプリケーション１２と、プラグイン機能モジュール１３と、汎用機能モジュール保存領域１４として制御する。ブラウザプログラム３００の制御によるブラウザ端末１０の動作は、図８に示した第３の実施の形態に係るブラウザ端末１０の動作と全く同様になるので、その詳しい説明を割愛する。
【００９０】
［第８の実施の形態］
図２０は、本発明の第８の実施の形態に係るブラウザ端末１０の構成を示すブロック図である。図２０を参照すると、本発明の第８の実施の形態に係るブラウザ端末１０は、図１３に示した第４の実施の形態に係るブラウザ端末１０に対して、ブラウザプログラム４００を備える点が異なっている。
【００９１】
ブラウザプログラム４００は、コンピュータでなるブラウザ端末１０に読み込まれ、当該ブラウザ端末１０の動作をブラウザコア１１（組込み機能モジュール１６、ブラウザコア制御部１７）と、ブラウザアプリケーション１２と、プラグイン機能モジュール１３と、汎用機能モジュール保存領域１４として制御する。ブラウザプログラム４００の制御によるブラウザ端末１０の動作は、図１３に示した第４の実施の形態に係るブラウザ端末１０の動作と全く同様になるので、その詳しい説明を割愛する。
【００９２】
【発明の効果】
第１の効果として、ブラウザコアとしてブラウザ端末に組み込まれていない機能を新規に追加することができる。これは、ブラウザコアに組込み機能モジュールとして含まれていない機能モジュールを、プラグイン機能モジュールとして付加したブラウザアプリケーションをダウンロードすることで実現できる。
【００９３】
第２の効果として、組込み機能モジュールと機能は同等であるものの動作詳細が異なる機能モジュールを、プラグイン機能モジュールとしてブラウザアプリケーションに付加することで、ブラウザアプリケーションごとに機能のカスタマイズが実現できる。これにより、例えば、コンテンツプロバイダが、ブラウザコアが提供している表示レイアウト機能を変更したい場合、そのコンテンツプロバイダ独自の表示レイアウト機能モジュールをプラグイン機能モジュールとしてブラウザアプリケーションに付加することで、独自の表示レイアウトを提供することも可能である。
【００９４】
第３の効果として、ブラウザコアの組込み機能モジュールにバグが発見された場合、バグ修正パッチをプラグイン機能モジュールとしてブラウザアプリケーションに付加させることで、容易にバグ修正が可能となる。これにより、ブラウザ端末のベンダも、ブラウザ端末の販売開始後に発見されたバグに対して、ブラウザ端末の回収ではなく、バグ修正パッチをプラグイン機能モジュールとして付加したブラウザアプリケーションを配布することで対応可能となる。
【００９５】
第４の効果として、汎用機能モジュール保存領域を設けておけば、ブラウザコアのバグ修正用機能モジュールなど、特定のブラウザアプリケーションからだけでなく、どのブラウザアプリケーションからも使用したい機能モジュールを汎用機能モジュールとして組み込むことができ、全てのブラウザアプリケーションから利用することが可能になる。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図２】第１の実施の形態におけるブラウザコア制御部の処理を示すフローチャートである。
【図３】図１中のブラウザコア制御部がブラウザアプリケーションの実行時にプラグイン機能モジュールのそれぞれについて機能／機能モジュール対応データベースのエントリ書き換えを行う様子を説明する図である。
【図４】図１中のブラウザコア制御部がブラウザアプリケーションの実際の実行処理が行われる際に機能／機能モジュール対応データベースを参照して登録されている機能ＩＤおよびモジュールＩＤに該当する機能モジュールを実行する様子を説明する図である。
【図５】本発明の第２の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図６】第２の実施の形態におけるブラウザコア制御部の処理を示すフローチャートである。
【図７】図５中のブラウザコア制御部が組込み機能モジュールと同等の機能を持つプラグイン機能モジュールが存在するかどうかを問い合わせる様子を説明する図である。
【図８】本発明の第３の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図９】第３の実施の形態におけるブラウザコア制御部の処理を示すフローチャートである。
【図１０】図８中のブラウザ端末内に汎用機能モジュール保存領域を設け、プラグイン機能モジュールのうち、全てのブラウザアプリケーションで利用したい機能モジュールを汎用機能モジュールとしてインストールし、汎用機能モジュールのそれぞれについて機能／機能モジュール対応データベースのエントリ書き換えを行う様子を説明する図である。
【図１１】図８中のブラウザコア制御部が別のブラウザアプリケーションの実行時に実行されるブラウザアプリケーションのプラグイン機能モジュールのそれぞれについて機能／機能モジュール対応データベースのエントリ書き換えを行う様子を説明する図である。
【図１２】図８中のブラウザコア制御部がブラウザアプリケーションの実際の実行処理を行う際に機能モジュールの呼び出しで機能／機能モジュール対応データベースを参照して登録されているモジュールＩＤに該当する機能モジュールを実行する様子を説明する図である。
【図１３】本発明の第４の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図１４】第４の実施の形態におけるブラウザコア制御部の処理を示すフローチャートである。
【図１５】図１３中のブラウザ端末内に汎用機能モジュール保存領域を設け、プラグイン機能モジュールのうち、全てのブラウザアプリケーションで利用したい機能モジュールを汎用機能モジュールとしてインストールしておく様子を説明する図である。
【図１６】図１３中のブラウザコア制御部が組込み機能モジュールと同等の機能を持つプラグイン機能モジュールおよび汎用機能モジュールが存在するかどうかを問い合わせる様子を説明する図である。
【図１７】本発明の第５の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図１８】本発明の第６の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図１９】本発明の第７の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【図２０】本発明の第８の実施の形態に係るブラウザ端末の構成を示すブロック図である。
【符号の説明】
１０　ブラウザ端末
１１　ブラウザコア
１２　ブラウザアプリケーション
１３　プラグイン機能モジュール
１４　汎用機能モジュール保存領域
１５　ネットワークインタフェース部
１６　組込み機能モジュール
１７　ブラウザコア制御部
１８　機能／機能モジュール対応データベース
１００、２００、３００、４００　ブラウザプログラム
【図１】
2004145604.tif 000003
【図２】
2004145604.tif 000004
【図３】
2004145604.tif 000005
【図４】
2004145604.tif 000006
【図５】
2004145604.tif 000007
【図６】
2004145604.tif 000008
【図７】
2004145604.tif 000009
【図８】
2004145604.tif 000010
【図９】
2004145604.tif 000011
【図１０】
2004145604.tif 000012
【図１１】
2004145604.tif 000013
【図１２】
2004145604.tif 000014
【図１３】
2004145604.tif 000015
【図１４】
2004145604.tif 000016
【図１５】
2004145604.tif 000017
【図１６】
2004145604.tif 000018
【図１７】
2004145604.tif 000019
【図１８】
2004145604.tif 000020
【図１９】
2004145604.tif 000021
【図２０】
2004145604.tif 000022