(57)【要約】【課題】クライアント端末及びサーバ装置間において通信されるデータ量を削減することが出来る、通信システム、クライアント端末、サーバ装置、通信方法及びプログラムを提供すること。【解決手段】本発明にかかる通信システムは、クライアント端末１００と、クライアント端末１００に表示させるデータをクライアント端末１００へ送信するサーバ装置２００とを備える。クライアント端末１００は、自装置のスクリーンサイズ情報を送信する。サーバ装置２００は、複数のスタイル情報を含む第１のスタイル情報ファイルから、スクリーンサイズ情報に基づいて、クライアント端末１００において表示することが出来ないスタイル情報を第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、第２のスタイル情報ファイルをクライアント端末１００へ送信する。【選択図】図１
2014164655.tif 000002
【特許請求の範囲】
【請求項１】
クライアント端末と、前記クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置とを備える通信システムであって、
前記クライアント端末は、
自装置のスクリーンサイズ情報を前記サーバ装置へ送信し、
前記サーバ装置は、
複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記スクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信する、通信システム。
【請求項２】
前記スクリーンサイズ情報は、
前記クライアント端末のスクリーンサイズの最大値及び最小値の少なくとも一方を含む、請求項１に記載の通信システム。
【請求項３】
前記スタイル情報に規定されたスクリーンサイズの最大値及び最小値と、前記クライアント端末のスクリーンサイズが前記スクリーンサイズの最大値及び最小値の範囲内である場合に、適用することが出来るスタイル情報とを関連付けて管理するスタイル最適化テーブルをさらに備える、請求項１又は２に記載の通信システム。
【請求項４】
前記サーバ装置は、
前記スタイル最適化テーブルにおいて、前記クライアント端末の前記スクリーンサイズを満たすレコードのうち、適用することが出来るスタイル情報が最も少ないレコードを用いて前記第２のスタイル情報ファイルを生成する、請求項３に記載の通信システム。
【請求項５】
前記サーバ装置は、
前記クライアント端末へ送信するデータのうち、前記クライアント端末のスクリーンサイズにおいては表示することが出来ないコンテンツデータを削除する、請求項１乃至４のいずれか１項に記載の通信システム。
【請求項６】
前記サーバ装置は、
前記スタイル情報に規定されたスクリーンサイズの最大値及び最小値を用いて、前記クライアント端末のスクリーンサイズを仮定し、前記仮定されたスクリーンサイズを有する前記クライアント端末においては表示することが出来ないコンテンツデータを削除する、請求項５に記載の通信システム。
【請求項７】
サーバ装置から送信されるデータを表示するクライアント端末であって、
前記サーバ装置から送信されるデータを表示するために用いる複数のスタイル情報を含む第１のスタイル情報ファイルから、自装置において表示することが出来ないスタイル情報を削除した第２のスタイル情報ファイルを前記サーバ装置から受信するために、前記サーバ装置へ自装置のスクリーンサイズ情報を送信する通信部を備えるクライアント端末。
【請求項８】
クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置であって、
複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信する通信部を備えるサーバ装置。
【請求項９】
クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置において用いられる通信方法であって、
複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、
前記第２のスタイル情報ファイルを前記クライアント端末へ送信する、通信方法。
【請求項１０】
クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置のコンピュータに実行させるプログラムであって、
複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成ステップと、
前記第２のスタイル情報ファイルを前記クライアント端末へ送信するステップと、をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信システムに関し、特にクライアント端末及びサーバ装置を有する通信システムに関する。
【背景技術】
【０００２】
近年、スマートフォンもしくはタブレット端末等の普及に伴い、Ｗｅｂサーバ管理者等は、パーソナルコンピュータ用に作成されたＷｅｂサイトの他に、スマートフォン等の小さい画面においても閲覧しやすいデザインを用いて、スマートフォンもしくはタブレット端末用のＷｅｂサイトも作成している。このようにして、Ｗｅｂサーバ管理者等は、様々な端末装置に適したデザインのＷｅｂサイトを作成している。
【０００３】
しかし、端末毎に専用のＷｅｂサイトを作成する場合、Ｗｅｂサーバ管理者等は、新たな端末が販売されるたびに、専用のＷｅｂサイトを作成する必要があり、さらに、それぞれの専用Ｗｅｂサイトを管理する必要もあるため、開発コスト及び管理コストが増大するという問題があった。
【０００４】
そこで、このような問題を解決するために、単一のＷｅｂサイトのみを用いて、端末のスクリーンサイズに応じて表示レイアウトを変更することが出来るレスポンシブＷｅｂデザインという手法が用いられている。
【０００５】
特許文献１には、レスポンシブＷｅｂデザインにおいて、表示レイアウトを規定するＣＳＳ（Cascading Style Sheet）クラスの選択方法が開示されている。具体的には、特許文献１には、サーバ装置は、複数のＣＳＳクラスのうち、内容が重複しているＣＳＳクラスもしくは過去に作成され現状は使用されなくなったＣＳＳクラス等を削除して、クライアント端末のブラウザに必要なＣＳＳクラスのみをクライアント端末へ送信することが開示されている。例えば、内容が重複しているＣＳＳクラスとは、異なる開発者が作成したためＣＳＳクラスの名称は異なるが、内容は同一であるＣＳＳクラスである。
【０００６】
さらに、特許文献２には、クライアント端末からサーバ装置に対してウインドウサイズの変更が指示された場合、サーバ装置は、新しいウインドウサイズに合わせたレイアウト情報をクライアント端末へ送信することが開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００７−２８７１４６号公報
【特許文献２】特開２００６−０４８７０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、特許文献１に開示されているＣＳＳクラスの選択方法においては、サーバ装置は、複数のＣＳＳクラスのうち重複したＣＳＳクラス等については削除しているが、残りのＣＳＳクラスが、クライアント端末において利用されるか否かについては考慮されていない。そのため、クライアント端末は、サーバ装置から利用しないＣＳＳクラスを受信する可能性がある。クライアント端末は、利用しないＣＳＳクラスに関しても処理する必要があるため、余分な処理が発生するという問題がある。
【０００９】
さらに、特許文献２においては、サーバ装置は、クライアント端末のウインドウサイズが変更するたびに新たなレイアウト情報をクライアント端末へ送信する必要がある。そのため、クライアント端末及びサーバ装置間において、ウインドウサイズの変更通知及びこれに伴う新たなレイアウト情報の通知といった通信が行われることとなり、クライアント端末及びサーバ装置において、処理負荷が増加するという問題がある。
【００１０】
本発明の目的は、上述した課題の少なくとも１つを解決することが出来る通信システム、クライアント端末、サーバ装置、通信方法及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
本発明の第１の態様にかかる通信システムは、クライアント端末と、前記クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置とを備える通信システムであって、前記クライアント端末は、自装置のスクリーンサイズ情報を前記サーバ装置へ送信し、前記サーバ装置は、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記スクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信するものである。
【００１２】
本発明の第２の態様にかかるクライアント端末は、サーバ装置から送信されるデータを表示するクライアント端末であって、前記サーバ装置から送信されるデータを表示するために用いる複数のスタイル情報を含む第１のスタイル情報ファイルから、自装置において表示することが出来ないスタイル情報を削除した第２のスタイル情報ファイルを前記サーバ装置から受信するために、前記サーバ装置へ自装置のスクリーンサイズ情報を送信する通信部を備えるものである。
【００１３】
本発明の第３の態様にかかるサーバ装置は、クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置であって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信する通信部を備えるものである。
【００１４】
本発明の第４の態様にかかる通信方法は、クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置において用いられる通信方法であって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信するものである。
【００１５】
本発明の第５の態様にかかるプログラムは、クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置のコンピュータに実行させるプログラムであって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成ステップと、前記第２のスタイル情報ファイルを前記クライアント端末へ送信するステップと、をコンピュータに実行させるものである。
【発明の効果】
【００１６】
本発明により、クライアント端末及びサーバ装置間において通信されるデータ量を削減することが出来る、通信システム、クライアント端末、サーバ装置、通信方法及びプログラムを提供することが出来る。
【図面の簡単な説明】
【００１７】
【図１】実施の形態１にかかる通信システムの構成図である。
【図２】実施の形態２にかかるクライアント端末及びサーバ装置の構成図である。
【図３】実施の形態２にかかるＣＳＳファイルの構成図である。
【図４】実施の形態２にかかるサーバ装置における事前処理の流れを示す図である。
【図５】実施の形態２にかかる条件付きスタイルテーブルの構成図である。
【図６】実施の形態２にかかる無条件スタイルテーブルの構成図である。
【図７】実施の形態２にかかるスタイル最適化テーブルの構成図である。
【図８】実施の形態２にかかるサーバ装置がクライアント端末からＨＴＴＰリクエストを受信した場合の処理の流れを示す図である。
【図９】実施の形態２にかかるスタイル情報の最適化処理の流れを示す図である。
【図１０】実施の形態３にかかるクライアント端末及びサーバ装置の構成図である。
【図１１】実施の形態３にかかるサーバ装置における事前処理の流れを示す図である。
【図１２】実施の形態３にかかるスタイル最適化テーブルのＩＤ毎に生成されるテーブルの構成図である。
【図１３】実施の形態３にかかるＨＴＭＬ最適化テーブルの構成図である。
【発明を実施するための形態】
【００１８】
（実施の形態１）
以下、図面を参照して本発明の実施の形態について説明する。図１を用いて本発明の実施の形態１にかかる通信システムの構成例について説明する。図１の通信システムは、クライアント端末１００及びサーバ装置２００を有している。クライアント端末１００は、サーバ装置２００から送信されるデータを受信する。さらに、クライアント端末１００は、受信したデータを表示する。クライアント端末１００は、携帯電話端末、スマートフォン端末、タブレット端末、パーソナルコンピュータ等であり、通信データを表示することが出来るディスプレイ等の表示部を備える通信装置である。
【００１９】
クライアント端末１００は、自装置のスクリーンサイズ情報をサーバ装置２００へ送信する。スクリーンサイズ情報は、クライアント端末１００の表示部（図示せず）の画面サイズを示す情報である。画面サイズは、画面の横幅及び高さを用いて示されてもよい。さらに、画面サイズは、インチ数もしくはピクセル数等を用いて示されてもよい。
【００２０】
サーバ装置２００は、複数のスクリーンサイズにおいてデータを表示させるために用いられる複数のスタイル情報を含む管理用スタイル情報ファイルを有する。複数のスクリーンサイズとは、例えば、パーソナルコンピュータ用のスクリーンサイズ、スマートフォン用のスクリーンサイズもしくはタブレット端末用のスクリーンサイズ等を含む。スタイル情報とは、例えばクライアント端末装置へ表示させるデータのレイアウトに関する情報を含む。表示部等におけるデータのレイアウトは、スクリーンサイズに応じて異なる。そのため、サーバ装置２００は、スクリーンサイズとスタイル情報とを対応付けて管理用スタイル情報ファイルとして管理している。
【００２１】
サーバ装置２００は、クライアント端末１００から送信されるスクリーンサイズ情報を受信する。サーバ装置２００は、受信したスクリーンサイズ情報に基づいて、クライアント端末１００において表示することが出来ないスタイル情報を管理用スタイル情報ファイルから削除して通知用スタイル情報ファイルを生成する。さらに、サーバ装置２００は、通知用スタイル情報ファイルをクライアント端末１００へ送信する。
【００２２】
以上説明したように、図１の通信システムを用いることにより、サーバ装置２００は、クライアント端末１００から、クライアント端末１００のスクリーンサイズ情報を取得することが出来る。これにより、サーバ装置２００は、管理用スタイル情報ファイルから、クライアント端末１００において表示することが出来ないスタイル情報を削除して、通知用スタイル情報ファイルを生成することが出来る。通知用スタイル情報ファイルは、管理用スタイル情報ファイルよりもデータ量が少ない。そのため、サーバ装置２００からクライアント端末１００へ通知用スタイル情報ファイルが送信されることにより、サーバ装置２００からクライアント端末１００へ管理用スタイル情報ファイルが送信される場合と比較して、クライアント端末１００及びサーバ装置２００の間のデータ送信量を低減させることが出来る。
【００２３】
さらに、クライアント端末１００は、自装置において表示することが出来ないスタイル情報以外の複数のスタイル情報を含む通知用スタイル情報ファイルを受信する。そのため、クライアント端末１００において、画像サイズもしくはウインドウサイズを変更した場合においても、複数のスタイル情報の中から表示可能なスタイル情報を選択することが出来るため、画像サイズ等の変更のたびにサーバ装置へスタイル情報の送信を要求する必要がなくなる。
【００２４】
（実施の形態２）
続いて、図２を用いて本発明の実施の形態２にかかるクライアント端末１００及びサーバ装置２００の詳細な構成例について説明する。はじめに、クライアント端末１００の構成例について説明する。クライアント端末１００は、Ｗｅｂブラウザ１１０を有している。さらに、Ｗｅｂブラウザ１１０は、ＨＴＴＰ（Hypertext Transfer Protocol）通信部１１１、スクリーンサイズ取得部１１２、コンテンツ解析部１１３及びコンテンツ表示部１１４を有している。
【００２５】
Ｗｅｂブラウザ１１０は、サーバ装置２００からデータを取得し、さらに取得したデータをクライアント端末１００の表示部等へ表示させるために用いられる。
【００２６】
ＨＴＴＰ通信部１１１は、サーバ装置２００へＨＴＴＰリクエストを送信する。さらに、ＨＴＴＰ通信部１１１は、ＨＴＴＰリクエストに対してサーバ装置２００から送信されるＨＴＴＰレスポンスに含まれるコンテンツを取得する。ＨＴＴＰ通信部１１１は、下記に説明するスクリーンサイズ情報をＨＴＴＰリクエストに設定して送信する。
【００２７】
スクリーンサイズ取得部１１２は、クライアント端末１００の表示部における最小及び最大スクリーンサイズを取得する。スクリーンサイズは、上述したように画面サイズと称されてもよい。スクリーンサイズ取得部１１２は、表示部に関する情報が格納されているメモリ等から、最小及び最大スクリーンサイズに関する情報を取得してもよい。スクリーンサイズは、表示部の横幅及び高さを用いて示されてもよい。さらに、スクリーンサイズは、インチ数もしくはピクセル数等を用いて示されてもよい。スクリーンサイズ取得部１１２は、取得したスクリーンサイズ情報をＨＴＴＰ通信部１１１へ出力する。
【００２８】
コンテンツ解析部１１３は、ＨＴＴＰ通信部１１１において取得したコンテンツを解析する。例えば、コンテンツ解析部１１３は、サーバ装置２００からコンテンツ情報とともに複数のスタイル情報を取得した場合、クライアント端末１００のスクリーンサイズに適応したスタイル情報を決定する。コンテンツ解析部１１３は、さらに取得したコンテンツが動画データかもしくは画像データか等についても解析してもよい。コンテンツ解析部１１３は、解析結果、例えば決定したスタイル情報をコンテンツ表示部１１４へ出力する。コンテンツ表示部１１４は、出力されたスタイル情報を用いて、例えば液晶ディスプレイ等へコンテンツを表示させる。
【００２９】
次に、サーバ装置２００の構成例について説明する。サーバ装置２００は、Ｗｅｂブラウザ２１０、コンテンツ群２２０、スタイル情報最適化部２３０、スタイル情報データテーブル２４０及びファイルキャッシュ２５０を有している。Ｗｅｂブラウザ２１０は、ＨＴＴＰ通信部２１１及びコンテンツ取得部２１２を有している。
【００３０】
Ｗｅｂブラウザ２１０に含まれるＨＴＴＰ通信部２１１は、ＨＴＴＰ通信部１１１から送信されたＨＴＴＰリクエストを受信する。さらに、ＨＴＴＰ通信部２１１は、受信したＨＴＴＰリクエストに対してＨＴＴＰレスポンスをクライアント端末１００へ送信する。
【００３１】
コンテンツ取得部２１２は、ＨＴＴＰ通信部２１１が取得したＨＴＴＰリクエストにおいて要求されたコンテンツをコンテンツ群２２０から抽出する。コンテンツ取得部２１２は、抽出したコンテンツをＨＴＴＰ通信部２１１へ出力する。コンテンツ群２２０は、複数のコンテンツを有している。コンテンツ群２２０は、ＨＴＴＰリクエストにおいて要求されたコンテンツをコンテンツ取得部２１２へ出力する。
【００３２】
スタイル情報最適化部２３０は、ＨＴＴＰリクエストに含まれるクライアント端末１００のスクリーンサイズ情報を用いて、ＣＳＳファイルの最適化を行う。スタイル情報最適化部２３０は、クライアント端末１００のスクリーンサイズに適応可能なスタイル情報をスタイル情報データテーブル２４０から抽出する。
【００３３】
例えば、スタイル情報最適化部２３０は、複数のスタイル情報が設定されているＣＳＳファイルから、クライアント端末１００に適応可能なスタイル情報のみを残し、クライアント端末１００に適応不可能なスタイル情報を削除する。ここで、複数のスタイル情報が設定されているＣＳＳファイルは、上述した管理用スタイル情報ファイルに相当し、適応不可能なスタイル情報を削除した後のＣＳＳファイルは、上述した通知用スタイル情報ファイルに相当する。スタイル情報最適化部２３０は、適応不可能なスタイル情報を削除したＣＳＳファイルをＨＴＴＰ通信部２１１へ出力する。
【００３４】
スタイル情報データテーブル２４０は、スクリーンサイズ情報とそのスクリーンサイズに適応可能なスタイル情報とを関連付けて管理している。
【００３５】
ファイルキャッシュ２５０は、スタイル情報最適化部２３０において最適化された通知用スタイル情報ファイルを保持する。
【００３６】
ＨＴＴＰ通信部２１１は、コンテンツ取得部２１２から出力されたコンテンツ及びスタイル情報最適化部２３０から出力されたＣＳＳファイルをＨＴＴＰレスポンスに設定し、ＨＴＴＰレスポンスをクライアント端末１００へ送信する。
【００３７】
続いて、スタイル情報最適化部２３０におけるスタイル情報の最適化に関する動作及び処理について説明する。
【００３８】
はじめに、図３を用いてスタイル情報最適化部２３０におけるＣＳＳファイルの解析処理について説明を行う。図３のＣＳＳファイルは、クライアント端末１００のスクリーンサイズが６００ｐｘ以下の場合に適用されるスタイル情報（Style A）と、スクリーンサイズが６００ｐｘ以上９００ｐｘ以下の場合に適用されるスタイル情報（Style B）と、スクリーンサイズが９００ｐｘ以上の場合に適用されるスタイル情報（Style C）と、スクリーンサイズによらずに常に適用されるスタイル情報（Style Z）とが定義されている。
【００３９】
続いて、図４を用いてクライアント端末１００からスクリーンサイズ情報が送信される前のサーバ装置２００における事前処理の流れについて説明する。はじめに、スタイル情報最適化部２３０は、スタイル情報データテーブル２４０に格納されているＣＳＳファイルを先頭から順に読み込む（Ｓ１１）。以下、スタイル情報最適化部２３０が図３のＣＳＳファイルを読み込んだ場合の処理の流れについて説明する。
【００４０】
次に、スタイル情報最適化部２３０は、ＣＳＳファイルに含まれるスタイル情報に、最小スクリーンサイズ（min-width）もしくは最大スクリーンサイズ（max-width）を条件にしたMedia Queryが指定されているか否かを判定する。
【００４１】
スタイル情報最適化部２３０は、スタイル情報にmin-widthもしくはmax-widthを条件にしたMedia Queryが指定されていた場合、条件付きスタイルテーブルにmin-width、max-width、スタイル情報及びオフセット値を記録する（Ｓ１３）。条件付きスタイルテーブルは、例えばスタイル情報データテーブル２４０に格納されている。
【００４２】
ここで、図５を用いて条件付きスタイルテーブルの構成例について説明する。ＩＤは、条件付きスタイルテーブルの各行の識別子である。「min-width」及び「max-width」は、Media Queryにおいて指定されている数値のことである。ここで、スタイル情報に「min-width」が指定されていない場合には０を設定し、「max-width」が指定されていない場合は無限大を示す値を設定する。スタイル情報は、図３のＣＳＳファイルに記述された「＠media（条件）｛  ｝」の文字列である。オフセット値は、スタイル情報がＣＳＳファイルのどの位置に記述されているのかを示すための情報である。具体的には、オフセット値は、ＣＳＳファイルの先頭から何バイト目にスタイル情報が記述されているのかを示してもよい。
【００４３】
スタイル情報最適化部２３０は、スタイル情報にmin-widthもしくはmax-widthを条件にしたMedia Queryが指定されていなかった場合、無条件スタイルテーブルにスタイル情報及びオフセット値を記録する（Ｓ１４）。無条件スタイルテーブルは、例えばスタイル情報データテーブル２４０に格納されている。
【００４４】
ここで、図６を用いて無条件スタイルテーブルの構成例について説明する。ＩＤは、条件付きスタイルテーブルと同様の識別子である。スタイル情報は、図３のＣＳＳファイルに記述された「.aaa｛  ｝、.bbb｛  ｝」等である。オフセット値は、条件付きスタイルテーブルにおける説明と同様である。
【００４５】
次に、スタイル情報最適化部２３０は、ステップＳ１３もしくはＳ１４の処理を実行後ＣＳＳファイルの終端まで解析を終了したか否かを判定する（Ｓ１５）。スタイル情報最適化部２３０は、ＣＳＳファイルの終端まで解析を終了していないと判定した場合、ステップＳ１２の処理を繰り返す。
【００４６】
スタイル情報最適化部２３０は、ＣＳＳファイルの終端まで解析を終了したと判定した場合、スタイル最適化テーブルを生成する（Ｓ１６）。ここで、図７を用いてスタイル最適化テーブルの構成について説明する。スタイル最適化テーブルは、コンテンツ群２２０に格納されているコンテンツ毎に設けられてもよい。
【００４７】
スクリーン幅には、条件付きスタイルテーブルの境界値を組み合わせたパターンを設定する。例えば、条件付きスタイルテーブルには、境界値として０、６００、９００及び∞が存在する。この場合、スクリーン幅の組み合わせは、０−６００、０−９００、０−∞、６００−９００、６００−∞、９００−∞の６通りとなる。スクリーン幅の組み合わせは、左側の数値がmid-widthを示し、右側の数値がmax-midthを示している。なお、６００−０のように、スクリーン幅の下限と上限とが数値的に成立しない組み合わせについては設定しない。
【００４８】
適用スタイルリストには、クライアント端末１００が適用すべきスタイル情報が示されている。以下に、適用スタイルリストの設定方法について説明する。ここで、図７のスタイル最適化テーブルにおけるスクリーン幅の下限をoptimized.min_widthとし、上限をoptimized.max_widthとする。さらに、図５の条件付きスタイルテーブルにおけるスクリーン幅の下限をconditional.min_widthとし、上限をconditional.max_widthとする。スタイル情報最適化部２３０は、スタイル最適化テーブルのＩＤに対応付けられたスクリーン幅（以下、レコードと称する）と、条件付きスタイルテーブルの各レコードとを用いて、次の条件を満たすか否かを判定する。条件は、optimized.min_width≦conditional.min_width、かつoptimized.max_width≧conditional.max_widthである。スタイル情報最適化部２３０は、スタイル最適化テーブルの各レコードについて、条件付きスタイルテーブルのすべてのレコードと上記の条件を満たすか否かを判定する。スタイル情報最適化部２３０は、条件を満たす条件付きスタイルテーブルのレコードが存在する場合、適用スタイルリストに、条件付きスタイルテーブルのレコードを示すＩＤを設定する。
【００４９】
例えば、スタイル最適化テーブルのＩＤ１のレコードについて説明する。スタイル最適化テーブルにおけるＩＤ１のレコードのスクリーン幅と、条件付きスタイルテーブルの各レコードを比較すると、条件付きスタイルテーブルにおけるＩＤ１のスクリーン幅のみが上記の条件を満たす。そのため、スタイル最適化テーブルのＩＤ１における適用スタイルリストに[１]が設定される。スタイル最適化テーブルのＩＤ２以降のレコードについても同様である。
【００５０】
スタイル情報最適化部２３０は、ＣＳＳファイルを解析したのちに、スタイル最適化テーブルを生成する。スタイル最適化テーブルには、クライアント端末１００のスクリーンサイズの最小値及び最大値を基準にして、クライアント端末１００においてＷｅｂサイトを表示する際に適用すべきスタイルの種類が記録されている。例えば、スタイル最適化テーブルにおけるＩＤ１のレコードは、「スクリーンサイズの最小値が０ｐｘ以上、最大値が６００ｐｘ以下のクライアントの場合、無条件スタイルテーブルのスタイル情報に加えて、条件付スタイルテーブルのＩＤ１のスタイル情報を送るのが最適である（無駄がない）」ことを示している。
【００５１】
スタイル最適化テーブルについても、条件付きスタイルテーブル及び無条件スタイルテーブルと同様に、スタイル情報データテーブル２４０に格納されてもよい。
【００５２】
続いて、図８を用いてクライアント端末１００からＨＴＴＰリクエストを受信した場合のサーバ装置２００の処理の流れについて説明する。
【００５３】
はじめに、ＨＴＴＰ通信部２１１は、クライアント端末１００からＨＴＴＰリクエストを受信する（Ｓ２１）。次に、スタイル情報最適化部２３０は、ＨＴＴＰリクエストにおいて要求されたコンテンツに関するスタイル最適化テーブルが存在するか否かを判定する（Ｓ２２）。スタイル情報最適化部２３０は、スタイル最適化テーブルが存在すると判定した場合、スタイル情報を最適化したＣＳＳファイルを生成する（Ｓ２３）。スタイル情報の最適化処理については、後に詳述する。
【００５４】
次に、ＨＴＴＰ通信部２１１は、スタイル情報が最適化されたＣＳＳファイル及び要求されたコンテンツを設定してＨＴＴＰレスポンスをクライアント端末１００へ送信する（Ｓ２４）。
【００５５】
また、ステップＳ２２において、スタイル最適化テーブルが存在しないと判定された場合、ＨＴＴＰ通信部２１１は、要求されたコンテンツを設定してＨＴＴＰレスポンスをクライアント端末１００へ送信する（Ｓ２４）。
【００５６】
続いて、図９を用いてスタイル情報の最適化処理の流れについて説明する。はじめに、スタイル情報最適化部２３０は、クライアント端末１００のスクリーンサイズ情報を取得する（Ｓ３１）。スタイル情報最適化部２３０は、最小スクリーンサイズを変数client.min_widthに代入し、最大スクリーンサイズを変数client.max_widthに代入する。
【００５７】
次に、スタイル情報最適化部２３０は、クライアント端末１００のスクリーンサイズ情報に基づいてスタイル最適化テーブルの中からレコードを選択する（Ｓ３２）。具体的には、client.min_width≧optimized.min_widthかつclient.max_width≦optimized.max_widthをスタイル最適化テーブルのレコードを選択し、選択したレコードの中から適用スタイルリストの個数が最も少ないレコードをさらに選択する。
【００５８】
次に、スタイル情報最適化部２３０は、選択したレコードのキャッシュへの参照にファイルが設定されているか否かを判定する（Ｓ３３）。
【００５９】
スタイル情報最適化部２３０は、キャッシュへの参照にファイルが設定されていない場合、選択したレコードの適用スタイルリストに含まれる条件付きスタイルテーブルのレコードを取得する（Ｓ３４）。次に、スタイル情報最適化部２３０は、取得した条件付きスタイルテーブルのレコードと、無条件スタイルテーブルの全レコードとをマージする。スタイル情報最適化部２３０は、これらのレコードをマージする際に、オフセット値に基づいてレコードを昇順にソートする。
【００６０】
次に、スタイル情報最適化部２３０は、管理用ＣＳＳファイルの中から、ステップＳ３５においてマージされたレコードに対応するスタイル情報を用いて通知用ＣＳＳファイルを生成する（Ｓ３６）。つまり、スタイル情報最適化部２３０は、管理用ＣＳＳファイルの中から、ステップＳ３５においてマージされたレコードに対応するスタイル情報以外のスタイル情報を削除する。通知用ＣＳＳファイルには、ステップＳ３５においてソートされた順番にスタイル情報が記述される。通知用ＣＳＳファイルは、最適化ファイルと称されてもよい。
【００６１】
次に、スタイル情報最適化部２３０は、通知用ＣＳＳファイルをファイルキャッシュ２５０へ格納するとともにＨＴＴＰ通信部２１１へ出力する（Ｓ３７）。
【００６２】
このようにして生成された通知用ＣＳＳファイルは、クライアント端末１００において表示することが出来るスタイル情報のみを有する。ＨＴＴＰ通信部２１１は、スタイル情報最適化部２３０において生成された通知用ＣＳＳファイルをクライアント端末１００へ送信する。
【００６３】
以上説明したように、サーバ装置２００は、クライアント端末１００において表示することが出来るスタイル情報のみを含む通知用ＣＳＳファイルを生成することが出来る。そのため、サーバ装置２００は、クライアント端末１００において不要なスタイル情報をクライアント端末１００へ送信しない。これによって、クライアント端末１００とサーバ装置２００との間の通信におけるデータ容量を削減することができる。
【００６４】
さらに、クライアント端末１００は、自装置において表示することが出来るＣＳＳファイルを受け取ることが出来る。これによって、クライアント端末１００は、画面サイズもしくはウインドウサイズを変更した場合においても、受け取ったＣＳＳファイルを用いることにより、画面サイズ等を変更した後もコンテンツのレイアウトを変更することが出来る。そのため、クライアント端末１００は、画面サイズ等を変更するたびにサーバ装置２００からＣＳＳファイルを取得する必要がなくなり、クライアント端末１００及びサーバ装置２００の間において通信される信号数を減少させることが出来る。
【００６５】
また、クライアント端末１００は、自装置において表示することが出来るスタイル情報を含むＣＳＳファイルを受け取るため、解析するＣＳＳファイルの内容が必要最小限とすることが出来る。そのため、クライアント端末１００は、ＣＰＵもしくはメモリ等のコンピュータリソースの使用量を少なくすることが出来る。
【００６６】
（実施の形態３）
続いて、図１０を用いて本発明の実施の形態３にかかるクライアント端末１００及びサーバ装置２００の構成例について説明する。図１０のサーバ装置２００は、図２のサーバ装置２００と比較して、ＨＴＭＬ最適化部２３５及びＨＴＭＬデータテーブル２４５を有する点において異なる。
【００６７】
ＨＴＭＬ最適化部２３５は、クライアント端末１００へ送信するＨＴＭＬデータを最適化する。具体的には、ＨＴＭＬ最適化部２３５は、クライアント端末１００において表示することが出来ないコンテンツデータをＨＴＭＬデータから削除する。具体的には、ＨＴＭＬ最適化部２３５は、クライアント端末１００のスクリーンサイズにおいては、表示される可能性のないコンテンツデータをクライアント端末１００へ送信するＨＴＭＬデータから削除する。ＨＴＭＬデータテーブル２４５は、ＨＴＭＬデータを格納している。
【００６８】
続いて、図１１を用いて実施の形態３における、クライアント端末１００からスクリーンサイズ情報が送信される前のサーバ装置２００における事前処理の流れについて説明する。なお、図１１における事前処理が動作するにあたって、スタイル情報最適化部２３０における最適なスタイル情報の解析及び最適化されたファイルの生成（図９において説明した処理）については完了していることを前提とする。また、図１１の処理は、スタイル最適化テーブルのレコードを先頭から順にひとつずつ選択し、全てのレコードおいて実施される。
【００６９】
はじめに、ＨＴＭＬ最適化部２３５は、スタイル最適化テーブルの中においてＨＴＭＬ最適化の処理が行われていないレコードを選択する（Ｓ４１）。次に、ＨＴＭＬ最適化部２３５は、クライアント端末１００のスクリーンサイズを仮定する（Ｓ４２）。ここで、スクリーンサイズの仮定方法について、具体的に説明する。
【００７０】
ＨＴＭＬ最適化部２３５は、選択したレコードに関連づけられている条件付きスタイルテーブルの各レコードから、スクリーンサイズの境界値を取得する。スクリーンサイズの境界値とは、min-width及びmax-widthの少なくとも一方に存在する値であって、optimized.min_width及びoptimized.max_widthの範囲内にある値を抽出する。例えば、図７におけるスタイル最適化テーブルのＩＤ２を選択した場合、条件付きスタイルテーブルから抽出される境界値は、０、６００及び９００である。次に、ＨＴＭＬ最適化部２３５は、抽出した境界値を昇順に整理したうえで、隣接する２つの境界値の平均値を算出する。例えば、抽出した境界値が０、６００及び９００の場合は、算出される平均値の集合は、３００（＝（０＋６００）／２）及び７５０（＝（６００＋９００）／２）となる。ＨＴＭＬ最適化部２３５は、このように算出した平均値をクライアント端末１００のスクリーンサイズと仮定する。つまり、境界値が０、６００及び９００である場合、クライアント端末１００において適用されるスタイル情報は、スクリーンサイズが０−６００の場合と、６００−９００の場合の２パターンが存在する。ここでは、それぞれのパターンにおけるスクリーンサイズの平均値をクライアント端末１００のスクリーンサイズと仮定している。
【００７１】
なお、ここでは、隣接する２つの境界値の平均値をクライアント端末１００のスクリーンサイズと仮定したが、隣接する２つの境界値の間の数値であれば、平均値と異なる数値をクライアント端末１００のスクリーンサイズと仮定してもよい。
【００７２】
図１１に戻り、ＨＴＭＬ最適化部２３５は、選択したスタイル最適化テーブルのレコードに記録されているキャッシュされた最適化ファイル（通知用ＣＳＳファイル）をファイルキャッシュ２５０から取得する（Ｓ４３）。
【００７３】
次に、ＨＴＭＬ最適化部２３５は、ステップＳ４２において算出した平均値を小さい値から順にひとつずつ選択し、選択した平均値を用いて最適化ファイルを走査する（Ｓ４４）。具体的には、ＨＴＭＬ最適化部２３５は、仮定したクライアント端末１００のスクリーンサイズにおいて、クライアント端末１００の画面上で非表示となるＨＴＭＬ要素を特定する。ＨＴＭＬ要素をセレクタと称してもよい。また、ＨＴＭＬ要素は、コンテンツデータであってもよい。例えば、クライアント端末１００のスクリーンサイズが小さい場合、クライアント端末１００は、サーバ装置２００から取得したコンテンツ（ＨＴＭＬデータ）をすべて表示することが出来ない場合がある。クライアント端末１００の画面上において非表示となるセレクタとは、このようにクライアント端末１００の画面上に表示することが出来ないＨＴＭＬデータである。セレクタを画面上で非表示とすることを示すパラメータを「display：none」と示す。ＨＴＭＬ最適化部２３５は、算出したそれぞれの平均値において、最適化ファイルを走査する。
【００７４】
ここで、ＨＴＭＬ最適化部２３５は、図１２に示すようにdisplay：noneとされたセレクタと、そのセレクタがdisplay：noneとされた回数を記録する。図１２は、スタイル最適化テーブルのＩＤ毎に生成される。スタイル最適化テーブルのＩＤ：ＮにおけるＮは、スタイル最適化テーブルのＩＤに用いられている整数値を示す。例えば、図１２が、スタイル最適化テーブルのＩＤ２と関連づけられている表であるとする。この場合、図１２におけるセレクタ「.class」は、１回display：noneとされたことを示している。これは、平均値３００もしくは７５０をクライアント端末のスクリーンサイズと仮定した場合に、どちらかのスクリーンサイズにおいて、ＨＴＭＬ要素である.classは、非表示となることを示している。また、図１２におけるセレクタ「.aaa」は、２回display：noneとされたことを示しているため、平均値３００及び７５０のスクリーンサイズのいずれにおいても非表示となることを示している。
【００７５】
次に、ＨＴＭＬ最適化部２３５は、常に表示されないセレクタが存在するか否かを判定する（Ｓ４５）。例えば、スタイル最適化テーブルのＩＤ２においては、「.aaa」が、常に表示されないセレクタとなる。
【００７６】
ステップＳ４５において、ＨＴＭＬ最適化部２３５は、常に表示されないセレクタが存在すると判定した場合、常に表示されないセレクタを含むスタイル情報を最適化ファイルから削除する（Ｓ４６）。この時、ＨＴＭＬ最適化部２３５は、セレクタを削除した後の最適化ファイルを新しいファイルとしてファイルキャッシュ２５０に保存する。
【００７７】
次に、ＨＴＭＬ最適化部２３５は、最適化の対象となるＨＴＭＬファイルから、常にdisplay：noneとされるセレクタを削除する（Ｓ４７）。この時、ＨＴＭＬ最適化部２３５は、セレクタを削除したＨＴＭＬファイルに関連づけるＣＳＳファイルを、ステップＳ４６において生成した新しい最適化ファイルとする。
【００７８】
次に、ＨＴＭＬ最適化部２３５は、図１３に示すＨＴＭＬ最適化テーブルに「min-width」、「max-width」、「適用スタイル数」及び「最適化されたＨＴＭＬファイルのキャッシュへの参照」を登録する（Ｓ４８）。適用スタイル数は、スタイル最適化テーブルのレコードの「適用スタイルリスト」の要素数を記録する。ＨＴＭＬ最適化テーブルは、ＨＴＭＬデータテーブル２４５に保存される。
【００７９】
ステップＳ４５において、ＨＴＭＬ最適化部２３５は、常に表示されないセレクタが存在しない判定した場合、ステップＳ４８の処理を実行する。なお、この場合、「ＨＴＭＬファイルのキャッシュへの参照」には、ＨＴＭＬ及びＣＳＳファイルの最適化が必要なかったため、オリジナルのＨＴＭＬファイルへの参照を記録する。
【００８０】
その後、クライアント端末１００からＨＴＭＬ取得要求を受けた時のサーバ装置２００は、最適化されたＨＴＭＬファイルをクライアント端末１００へ送信する。
【００８１】
以上説明したように本発明の実施の形態３におけるサーバ装置２００を用いることにより、サーバ装置２００は、不要なスタイル情報とともに、クライアント端末１００において非表示とされるＨＴＭＬデータについても予め削除して、ＨＴＭＬファイルをクライアント端末１００へ送信することが出来る。これにより、クライアント端末１００とサーバ装置２００との間のデータ通信量を削減することが出来る。
【００８２】
なお、本発明は上記実施の形態に限られたものではなく、趣旨を逸脱しない範囲で適宜変更することが可能である。
【００８３】
（付記１）クライアント端末と、前記クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置とを備える通信システムであって、前記クライアント端末は、自装置のスクリーンサイズ情報を前記サーバ装置へ送信し、前記サーバ装置は、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記スクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信する、通信システム。
【００８４】
（付記２）前記スクリーンサイズ情報は、前記クライアント端末のスクリーンサイズの最大値及び最小値の少なくとも一方を含む、付記１に記載の通信システム。
【００８５】
（付記３）前記スタイル情報に規定されたスクリーンサイズの最大値及び最小値と、前記クライアント端末のスクリーンサイズが前記スクリーンサイズの最大値及び最小値の範囲内である場合に、適用することが出来るスタイル情報とを関連付けて管理するスタイル最適化テーブルをさらに備える、付記１又は２に記載の通信システム。
【００８６】
（付記４）前記サーバ装置は、前記スタイル最適化テーブルにおいて、前記クライアント端末の前記スクリーンサイズを満たすレコードのうち、適用することが出来るスタイル情報が最も少ないレコードを用いて前記第２のスタイル情報ファイルを生成する、付記３に記載の通信システム。
【００８７】
（付記５）前記サーバ装置は、前記クライアント端末へ送信するデータのうち、前記クライアント端末のスクリーンサイズにおいては表示することが出来ないコンテンツデータを削除する、付記１乃至４のいずれか１項に記載の通信システム。
【００８８】
（付記６）前記サーバ装置は、前記スタイル情報に規定されたスクリーンサイズの最大値及び最小値を用いて、前記クライアント端末のスクリーンサイズを仮定し、前記仮定されたスクリーンサイズを有する前記クライアント端末においては表示することが出来ないコンテンツデータを削除する、付記５に記載の通信システム。
【００８９】
（付記７）サーバ装置から送信されるデータを表示するクライアント端末であって、前記サーバ装置から送信されるデータを表示するために用いる複数のスタイル情報を含む第１のスタイル情報ファイルから、自装置において表示することが出来ないスタイル情報を削除した第２のスタイル情報ファイルを前記サーバ装置から受信するために、前記サーバ装置へ自装置のスクリーンサイズ情報を送信する通信部を備えるクライアント端末。
【００９０】
（付記８）クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置であって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、前記第２のスタイル情報ファイルを前記クライアント端末へ送信する通信部を備えるサーバ装置。
【００９１】
（付記９）サーバ装置から送信されるデータを表示するクライアント端末において用いられる通信方法であって、前記サーバ装置から送信されるデータを表示するために用いる複数のスタイル情報を含む第１のスタイル情報ファイルから、自装置において表示することが出来ないスタイル情報を削除した第２のスタイル情報ファイルを前記サーバ装置から受信するために、前記サーバ装置へ自装置のスクリーンサイズ情報を送信する、通信方法。
【００９２】
（付記１０）クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置において用いられる通信方法であって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成し、
前記第２のスタイル情報ファイルを前記クライアント端末へ送信する、通信方法。
【００９３】
（付記１１）サーバ装置から送信されるデータを表示するクライアント端末のコンピュータに実行させるプログラムであって、前記サーバ装置から送信されるデータを表示するために用いる複数のスタイル情報を含む第１のスタイル情報ファイルから、自装置において表示することが出来ないスタイル情報を削除した第２のスタイル情報ファイルを前記サーバ装置から受信するために、前記サーバ装置へ自装置のスクリーンサイズ情報を送信するステップをコンピュータに実行させるプログラム。
【００９４】
（付記１２）クライアント端末に表示させるデータを前記クライアント端末へ送信するサーバ装置のコンピュータに実行させるプログラムであって、複数のスクリーンサイズにおいて前記データを表示させるために用いられる複数のスタイル情報を含む第１のスタイル情報ファイルから、前記クライアント端末から送信される前記クライアント端末のスクリーンサイズ情報に基づいて、前記クライアント端末において表示することが出来ないスタイル情報を前記第１のスタイル情報ファイルから削除した第２のスタイル情報ファイルを生成ステップと、前記第２のスタイル情報ファイルを前記クライアント端末へ送信するステップと、をコンピュータに実行させるプログラム。
【符号の説明】
【００９５】
１００  クライアント端末
１１０  Ｗｅｂブラウザ
１１１  ＨＴＴＰ通信部
１１２  スクリーンサイズ取得部
１１３  コンテンツ解析部
１１４  コンテンツ表示部
２００  サーバ装置
２１０  Ｗｅｂブラウザ
２１１  ＨＴＴＰ通信部
２１２  コンテンツ取得部
２２０  コンテンツ群
２３５  ＨＴＭＬ最適化部
２３０  スタイル情報最適化部
２４０  スタイル情報データテーブル
２４５  ＨＴＭＬデータテーブル
２５０  ファイルキャッシュ
【図１】
2014164655.tif 000003
【図２】
2014164655.tif 000004
【図３】
2014164655.tif 000005
【図４】
2014164655.tif 000006
【図５】
2014164655.tif 000007
【図６】
2014164655.tif 000008
【図７】
2014164655.tif 000009
【図８】
2014164655.tif 000010
【図９】
2014164655.tif 000011
【図１０】
2014164655.tif 000012
【図１１】
2014164655.tif 000013
【図１２】
2014164655.tif 000014
【図１３】
2014164655.tif 000015