(57)【要約】【課題】ウェブサービス呼び出しのようにパラメータが変化する画面表示プログラムを自動生成する。【解決手段】スタイルシート生成部１２１（レイアウト生成部）は、レイアウト情報記憶部１１２が記憶したレイアウト情報データに基づいて、スタイルシートデータ（レイアウトプログラム）を生成する。スクリプト生成部１２２（部品表示生成部）は、イベント情報記憶部１１３が記憶したイベント情報データに基づいて、スクリプトデータ（部品表示プログラム）を生成する。ＨＴＭＬ生成部１２５（画面表示プログラム生成部）は、スタイルシートデータとスクリプトデータとを結合して、ＨＴＭＬデータ（画面表示プログラム）を生成する。【選択図】図５
2010211292.tif 000002
【特許請求の範囲】
【請求項１】
画面部品提供装置が提供する画面部品により構成される表示画面を画面表示装置に表示させる画面表示プログラムを生成する画面表示プログラム生成装置において、
データを記憶する記憶装置と、データを処理する処理装置と、レイアウト情報記憶部と、イベント情報記憶部と、レイアウト生成部と、部品表示生成部と、画面表示プログラム生成部とを有し、
上記レイアウト情報記憶部は、上記記憶装置を用いて、上記表示画面のなかで上記画面部品を表示する表示位置を表わすレイアウト情報データを記憶し、
上記イベント情報記憶部は、上記記憶装置を用いて、上記表示位置に上記画面部品を表示する表示条件を表わすイベント情報データを記憶し、
上記レイアウト生成部は、上記処理装置を用いて、上記レイアウト情報記憶部が記憶したレイアウト情報データに基づいて、レイアウトプログラムを生成し、上記レイアウトプログラムは、上記画面部品を表示するための表示領域を上記表示位置に表示させるプログラムであり、
上記部品表示生成部は、上記処理装置を用いて、上記イベント情報記憶部が記憶したイベント情報データに基づいて、部品表示プログラムを生成し、上記部品表示プログラムは、上記表示条件が満たされているか否かを判定して、上記表示条件が満たされていると判定した場合に上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求し、上記画面部品提供装置が提供した画面部品を上記表示領域に表示させるプログラムであり、
上記画面表示プログラム生成部は、上記処理装置を用いて、上記レイアウト生成部が生成したレイアウトプログラムと、上記部品表示生成部が生成した部品表示プログラムとを結合して、上記画面表示プログラムを生成することを特徴とする画面表示プログラム生成装置。
【請求項２】
上記部品表示プログラムは、上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求する画面部品要求を、所定の要求転送装置に対して送信し、上記画面部品提供装置が提供した画面部品を、上記要求転送装置から受信させるプログラムであることを特徴とする請求項１に記載の画面表示プログラム生成装置。
【請求項３】
上記画面表示プログラムは、ＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式のテキストデータであり、
上記部品表示プログラムは、上記画面部品を表わすデータとして、ＨＴＭＬの要素を表わすＨＴＭＬ形式のテキストデータを受信し、受信したテキストデータから上記画面部品を生成させるプログラムであることを特徴とする請求項１または請求項２に記載の画面表示プログラム生成装置。
【請求項４】
請求項１乃至請求項３のいずれかに記載の画面表示プログラム生成装置と、画面設計装置とを有し、
上記画面設計装置は、利用者の操作にしたがって、上記レイアウト情報データと上記イベント情報データとを生成し、
上記レイアウト情報記憶部は、上記記憶装置を用いて、上記画面設計装置が生成したレイアウト情報データを記憶し、
上記イベント情報記憶部は、上記記憶装置を用いて、上記画面設計装置が生成したイベント情報データを記憶することを特徴とする画面表示システム。
【請求項５】
上記画面表示システムは、更に、画面部品提供装置を有し、
上記画面部品提供装置は、上記画面表示装置からの要求に基づいて、上記画面表示装置に対して画面部品を提供することを特徴とする請求項４に記載の画面表示システム。
【請求項６】
データを記憶する記憶装置と、データを処理する処理装置とを有するコンピュータが実行することにより、上記コンピュータが請求項１乃至請求項３のいずれかに記載の画面表示プログラム生成装置として機能することを特徴とするコンピュータプログラム。
【請求項７】
データを処理する処理装置を有する画面表示プログラム生成装置が、画面部品提供装置が提供する画面部品により構成される表示画面を画面表示装置に表示させる画面表示プログラムを生成する画面表示プログラム生成方法において、
上記処理装置が、上記表示画面に上記画面部品を表示する表示位置を表わすレイアウト情報データに基づいて、レイアウトプログラムを生成し、上記レイアウトプログラムは、上記画面部品を表示するための表示領域を上記表示位置に表示させるプログラムであり、
上記処理装置が、上記表示位置に上記画面部品を表示する表示条件を表わすイベント情報データに基づいて、部品表示プログラムを生成し、上記部品表示プログラムは、上記表示条件が満たされているか否かを判定して、上記表示条件が満たされていると判定した場合に上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求し、上記画面部品提供装置が提供した画面部品を上記表示領域に表示させるプログラムであり、
上記処理装置が、生成したレイアウトプログラムと、生成した部品表示プログラムとを結合して、上記画面表示プログラムを生成することを特徴とする画面表示プログラム生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ウェブサービスなどを利用した表示画面を表示させる画面表示プログラムを生成する画面表示プログラム生成装置に関する。
【背景技術】
【０００２】
ウェブシステムを新たに構築する際、既存の資産を活用する技術として、例えばＳＯＡ（Ｓｅｒｖｉｃｅ−Ｏｒｉｅｎｔｅｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ）がある。ＳＯＡにおいて、既存システムの機能をウェブサービスという単位で分割し、分割されたウェブサービスを再構成して、新たなウェブシステムを構築する。ウェブサービスは、プログラムから呼び出すことができ、リクエストに対するレスポンスとしてデータを返す。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−２２９９７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ブラウザ装置が表示するウェブ画面に、ウェブサービスのレスポンスを表示させる場合、ＨＴＭＬやスクリプトなど画面表示用のソースコードを作成する必要がある。ウェブサービス呼び出しのようにソースコード内のパラメータが変化する場合、ソースコードを自動生成することは難しく、ソースコードを手作業で作成する必要がある。
この発明は、例えば上記のような課題を解決するためになされたものであり、パラメータが変化する画面表示用のソースコードを自動生成できるようにすることを目的とする。
【課題を解決するための手段】
【０００５】
この発明にかかる画面表示プログラム生成装置は、
画面部品提供装置が提供する画面部品により構成される表示画面を画面表示装置に表示させる画面表示プログラムを生成する画面表示プログラム生成装置において、
データを記憶する記憶装置と、データを処理する処理装置と、レイアウト情報記憶部と、イベント情報記憶部と、レイアウト生成部と、部品表示生成部と、画面表示プログラム生成部とを有し、
上記レイアウト情報記憶部は、上記記憶装置を用いて、上記表示画面のなかで上記画面部品を表示する表示位置を表わすレイアウト情報データを記憶し、
上記イベント情報記憶部は、上記記憶装置を用いて、上記表示位置に上記画面部品を表示する表示条件を表わすイベント情報データを記憶し、
上記レイアウト生成部は、上記処理装置を用いて、上記レイアウト情報記憶部が記憶したレイアウト情報データに基づいて、レイアウトプログラムを生成し、上記レイアウトプログラムは、上記画面部品を表示するための表示領域を上記表示位置に表示させるプログラムであり、
上記部品表示生成部は、上記処理装置を用いて、上記イベント情報記憶部が記憶したイベント情報データに基づいて、部品表示プログラムを生成し、上記部品表示プログラムは、上記表示条件が満たされているか否かを判定して、上記表示条件が満たされていると判定した場合に上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求し、上記画面部品提供装置が提供した画面部品を上記表示領域に表示させるプログラムであり、
上記画面表示プログラム生成部は、上記処理装置を用いて、上記レイアウト生成部が生成したレイアウトプログラムと、上記部品表示生成部が生成した部品表示プログラムとを結合して、上記画面表示プログラムを生成することを特徴とする。
【発明の効果】
【０００６】
この発明にかかる画面表示プログラム生成装置によれば、レイアウト生成部が、レイアウト情報データに基づいて、画面部品を表示する表示領域をあらかじめ用意させるレイアウトプログラムを生成し、部品表示生成部が、イベント情報データ５３０に基づいて、イベントの発生などの条件が満たされた場合に画面部品を取得して表示させる部品表示プログラムを生成するので、画面表示プログラムを自動生成することができる。
【図面の簡単な説明】
【０００７】
【図１】実施の形態１における画面表示システム８００の全体構成の一例を示すシステム構成図。
【図２】実施の形態１におけるブラウザ装置２００が表示する表示画面４００の一例を示す図。
【図３】実施の形態１におけるウェブサーバ装置１００及びブラウザ装置２００の外観の一例を示す斜視図。
【図４】実施の形態１におけるウェブサーバ装置１００及びブラウザ装置２００のハードウェア資源の一例を示す図。
【図５】実施の形態１におけるウェブサーバ装置１００の機能ブロックの構成の一例を示すブロック構成図。
【図６】実施の形態１におけるブラウザ装置２００の機能ブロックの構成の一例を示すブロック構成図。
【図７】実施の形態１における構成情報データ５１０の一例を示す図。
【図８】実施の形態１におけるレイアウト情報データ５２０の一例を示す図。
【図９】実施の形態１におけるイベント情報データ５３０の一例を示す図。
【図１０】実施の形態１におけるスタイルシート雛形データ５６０とスタイルシートデータ５７０との一例を示す図。
【図１１】実施の形態１におけるスタイルシート生成処理Ｓ７１０の流れの一例を示すフローチャート図。
【図１２】実施の形態１におけるスクリプト雛形データ５８０とスクリプトデータ５９０との一例を示す図。
【図１３】実施の形態１におけるスクリプト生成処理Ｓ７３０の流れの一例を示すフローチャート図。
【図１４】実施の形態１における本体雛形データ６１０と本体データ６２０との一例を示す図。
【図１５】実施の形態１における本体生成処理Ｓ７５０の流れの一例を示すフローチャート図。
【図１６】実施の形態１におけるＨＴＭＬ雛形データ６３０とＨＴＭＬデータ６４０との一例を示す図。
【図１７】実施の形態１におけるＨＴＭＬ生成処理Ｓ７６０の流れの一例を示すフローチャート図。
【図１８】実施の形態１における画面部品データ６５０と画面構成データ６６０との一例を示す図。
【図１９】実施の形態１における画面部品生成表示処理の流れの一例を示すフローチャート図。
【図２０】実施の形態２における画面表示システム８００の全体構成の一例を示すシステム構成図。
【図２１】実施の形態２における画面設計装置３００の機能ブロックの構成の一例を示すブロック構成図。
【発明を実施するための形態】
【０００８】
実施の形態１．
実施の形態１について、図１〜図１９を用いて説明する。
【０００９】
図１は、この実施の形態における画面表示システム８００の全体構成の一例を示すシステム構成図である。
画面表示システム８００は、ウェブページなどの画面（以下「表示画面」と呼ぶ。）をブラウザ装置２００に表示するシステムである。ブラウザ装置２００が表示する表示画面には、静的な画面だけでなく、利用者の操作などにしたがってダイナミックに変化する動的な画面も含まれる。
ブラウザ装置２００は、例えばコンピュータが、ブラウザアプリケーションプログラムを実行することにより、ブラウザ装置２００として機能するものである。
ブラウザ装置２００は、利用者の操作などに基づいて、インターネット９４０などのネットワークを介して、ウェブサーバ装置１００に対して、表示したい表示画面を要求する。
ウェブサーバ装置１００は、ブラウザ装置２００からの要求に基づいて、ＨＴＭＬなどのプログラム（以下「画面表示プログラム」と呼ぶ。）を、ブラウザ装置２００に対して送信する。画面表示プログラムは、最初に表示する表示画面の構成を表わすだけでなく、利用者の操作などにしたがって画面を変化させる処理の内容などを表わす。例えばＨＴＭＬであれば、スクリプト部分が、処理の内容を表わし、それ以外の部分が、表示画面の構成を表わす。ブラウザ装置２００は、画面表示プログラムを受信し、受信した画面表示プログラムを実行することにより表示画面を生成し、生成した表示画面を表示する。
ウェブサービス提供装置８２０は、ウェブサービスを提供する。ウェブサービスとは、キーワードからウェブページを検索するサービスや、住所から地図を表示するサービスなど、従来ウェブページを介して提供されてきたサービスのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）を公開して、ウェブページを介さずに提供できるようにしたものである。
ブラウザ装置２００が表示する表示画面は、ウェブサービス提供装置８２０が提供するウェブサービスにより得られた情報をもとに構成される部分を含む。ブラウザ装置２００は、実行している画面表示プログラムにしたがって、利用者の操作などにより、呼び出すウェブサービスを変えたり、ウェブサービスに渡すパラメータを変えたりして、動的な画面を生成する。
なお、ウェブサービス提供装置８２０は、必ずしもインターネット９４０に接続している必要はなく、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などを介して、ウェブサーバ装置１００に接続している構成であってもよい。
【００１０】
図２は、この実施の形態におけるブラウザ装置２００が表示する表示画面４００の一例を示す図である。
表示画面４００は、複数の画面部品４１０ａ〜ｃにより構成される。
画面部品４１０ａは、文字列を入力するための画面部品である。画面部品４１０ａは、テキストボックス４２１、送信ボタン４２２などを有する。
画面部品４１０ｂは、検索結果を一覧表示するための画面部品である。画面部品４１０ｂは、リストボックス４２３などを有する。利用者が文字列をテキストボックス４２１に入力し、送信ボタン４２２を押すと、ウェブサービス提供装置８２０が提供する検索サービスを利用して、その文字列を検索し、その結果をリストボックス４２３に表示する。
画面部品４１０ｃは、検索結果の詳細を表示するための画面部品である。リストボックス４２３に表示された検索結果のなかから利用者が項目を選択すると、ウェブサービス提供装置８２０が提供する辞書サービスや地図サービスなどを利用して、その項目に関連する詳細な情報を取得し、その情報を画面部品４１０ｃに表示する。
このように、表示画面４００は、利用者の操作や、ウェブサービス提供装置８２０が返す結果などにより、動的に変化する。
【００１１】
図３は、この実施の形態におけるウェブサーバ装置１００及びブラウザ装置２００の外観の一例を示す斜視図である。
ウェブサーバ装置１００及びブラウザ装置２００は、システムユニット９１０、ＣＲＴ（Ｃａｔｈｏｄｅ・Ｒａｙ・Ｔｕｂｅ）やＬＣＤ（液晶）の表示画面を有する表示装置９０１、キーボード９０２（Ｋｅｙ・Ｂｏａｒｄ：Ｋ／Ｂ）、マウス９０３、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ・Ｄｉｓｋ・Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７などのハードウェア資源を備え、これらはケーブルや信号線で接続されている。
システムユニット９１０は、コンピュータであり、ファクシミリ機９３２、電話器９３１とケーブルで接続され、また、ローカルエリアネットワーク９４２（ＬＡＮ）、ゲートウェイ９４１を介してインターネット９４０に接続されている。
【００１２】
図４は、この実施の形態におけるウェブサーバ装置１００及びブラウザ装置２００のハードウェア資源の一例を示す図である。
ウェブサーバ装置１００及びブラウザ装置２００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ・Ｐｒｏｃｅｓｓｉｎｇ・Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。ＣＰＵ９１１は、バス９１２を介してＲＯＭ９１３、ＲＡＭ９１４、通信装置９１５、表示装置９０１、キーボード９０２、マウス９０３、ＦＤＤ９０４、ＣＤＤ９０５、プリンタ装置９０６、スキャナ装置９０７、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。通信装置９１５、キーボード９０２、スキャナ装置９０７、ＦＤＤ９０４などは、入力部、入力装置の一例である。また、通信装置９１５、表示装置９０１、プリンタ装置９０６などは、出力部、出力装置の一例である。
【００１３】
通信装置９１５は、ファクシミリ機９３２、電話器９３１、ＬＡＮ９４２等に接続されている。通信装置９１５は、ＬＡＮ９４２に限らず、インターネット９４０、ＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）などに接続されていても構わない。インターネット９４０或いはＩＳＤＮ等のＷＡＮに接続されている場合、ゲートウェイ９４１は不用となる。
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。プログラム群９２３のプログラムは、ＣＰＵ９１１、オペレーティングシステム９２１、ウィンドウシステム９２２により実行される。
【００１４】
上記プログラム群９２３には、以下に述べる実施の形態の説明において「〜部」として説明する機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
ファイル群９２４には、以下に述べる実施の形態の説明において、「〜の判定結果」、「〜の計算結果」、「〜の処理結果」として説明する情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示などのＣＰＵの動作に用いられる。抽出・検索・参照・比較・演算・計算・処理・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリやキャッシュメモリやバッファメモリに一時的に記憶される。
また、以下に述べる実施の形態の説明において説明するフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ（Ｄｉｇｉｔａｌ・Ｖｅｒｓａｔｉｌｅ・Ｄｉｓｋ）等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００１５】
また、以下に述べる実施の形態の説明において「〜部」として説明するものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明するものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、以下に述べる「〜部」としてコンピュータを機能させるものである。あるいは、以下に述べる「〜部」の手順や方法をコンピュータに実行させるものである。
【００１６】
図５は、この実施の形態におけるウェブサーバ装置１００の機能ブロックの構成の一例を示すブロック構成図である。
ウェブサーバ装置１００は、コード生成部１１０、要求転送部１４０、送受信部１８０を有する。
【００１７】
コード生成部１１０は、ブラウザ装置２００からの要求にしたがって、ＨＴＭＬ形式のデータ（以下「ＨＴＭＬデータ」と呼ぶ。）を生成する。なお、コード生成部１１０は、あらかじめＨＴＭＬデータを生成して記憶しておいてもよい。
コード生成部１１０が生成するＨＴＭＬデータには、画面部品を要求するリクエスト（以下「画面部品要求」と呼ぶ。）をウェブサーバ装置１００に対して送信するスクリプトが含まれている。ブラウザ装置２００は、表示画面４００を表示するときや、利用者の操作などによって表示画面４００を変更するとき、このスクリプトを実行して、画面部品要求を送信する。
【００１８】
要求転送部１４０は、ブラウザ装置２００からの画面部品要求にしたがって、画面部品を表わすデータ（以下「画面部品データ」と呼ぶ。）を生成する。要求された画面部品データを生成するためにウェブサービスを利用する場合、要求転送部１４０は、そのウェブサービスを提供するウェブサービス提供装置８２０に対して、画面部品要求を転送し、その結果に基づいて、画面部品データを生成する。
【００１９】
送受信部１８０は、ブラウザ装置２００からの要求を受信し、受信した要求が、ＨＴＭＬデータの送信を要求するリクエスト（以下「ＨＴＭＬ要求」と呼ぶ。）であれば、コード生成部１１０に通知し、画面部品要求であれば、要求転送部１４０に通知する。送受信部１８０は、コード生成部１１０が生成したＨＴＭＬデータや、要求転送部１４０が生成した画面部品データを、ブラウザ装置２００に対して送信する。
【００２０】
コード生成部１１０は、構成情報記憶部１１１、レイアウト情報記憶部１１２、イベント情報記憶部１１３、スタイルシート雛形記憶部１１４、スクリプト雛形記憶部１１５、本体雛形記憶部１１７、ＨＴＭＬ雛形記憶部１１８、スタイルシート生成部１２１、スクリプト生成部１２２、本体生成部１２４、ＨＴＭＬ生成部１２５を有する。
構成情報記憶部１１１は、磁気ディスク装置９２０を用いて、あらかじめ、構成情報データを記憶している。構成情報データは、表示画面４００を構成する画面部品など表示画面４００全体の構成を表わすデータである。
レイアウト情報記憶部１１２は、磁気ディスク装置９２０を用いて、あらかじめ、レイアウト情報データを記憶している。レイアウト情報データは、画面部品の表示位置など表示画面４００の見た目を表わすデータである。
イベント情報記憶部１１３は、磁気ディスク装置９２０を用いて、あらかじめ、イベント情報データを記憶している。イベント情報データは、利用者の操作などのイベントと、そのイベントが発生したときに実行する処理との関係など表示画面４００の動きを表わすデータである。
【００２１】
スタイルシート雛形記憶部１１４は、磁気ディスク装置９２０を用いて、あらかじめ、レイアウト情報データからスタイルシートを生成するための雛形（以下「スタイルシート雛形データ」と呼ぶ。）を記憶している。スタイルシートとは、ＨＴＭＬデータのうち、要素の表示位置、大きさ、色など表示画面４００の見た目に関する部分を定義するデータである。
スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データと、レイアウト情報記憶部１１２が記憶したレイアウト情報データと、スタイルシート雛形記憶部１１４が記憶したスタイルシート雛形データとを入力する。スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、入力した構成情報データとレイアウト情報データとスタイルシート雛形データとに基づいて、スタイルシートデータを生成する。スタイルシートデータは、ＨＴＭＬデータのうちスタイルシートの部分を構成するデータである。例えば、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、構成情報データやレイアウト情報データから、スタイルシート雛形データに設けられた空欄を埋めるためのデータを抽出し、抽出したデータでスタイルシート雛形データの空欄を埋めて、スタイルシートデータを生成する。スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、生成したスタイルシートデータを出力する。
【００２２】
スクリプト雛形記憶部１１５は、磁気ディスク装置９２０を用いて、あらかじめ、イベント情報データからスクリプトを生成するための雛形（以下「スクリプト雛形データ」と呼ぶ。）を記憶している。スクリプトとは、ＨＴＭＬデータのうち、処理や動作に関する部分を定義するデータであり、例えばスクリプト言語によって記述される。
スクリプト生成部１２２は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データと、イベント情報記憶部１１３が記憶したイベント情報データと、スクリプト雛形記憶部１１５が記憶したスクリプト雛形データとを入力する。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、入力した構成情報データとイベント情報データとスクリプト雛形データとに基づいて、スクリプトデータを生成する。スクリプトデータは、ＨＴＭＬデータのうちスクリプトの部分を構成するデータである。例えば、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、構成情報データやイベント情報データから、スクリプト雛形データに設けられた空欄を埋めるためのデータを抽出し、抽出したデータでスクリプト雛形データの空欄を埋めて、スクリプトデータを生成する。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、生成したスクリプトデータを出力する。
【００２３】
本体雛形記憶部１１７は、磁気ディスク装置９２０を用いて、あらかじめ、構成情報データからＨＴＭＬデータの本体を生成するための雛形（以下「本体雛形データ」と呼ぶ。）を記憶している。ＨＴＭＬデータの本体とは、ＨＴＭＬデータのうち、最初の画面構成に関する部分を定義するデータである。
本体生成部１２４は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データと、本体雛形記憶部１１７が記憶した本体雛形データとを入力する。本体生成部１２４は、ＣＰＵ９１１を用いて、入力した構成情報データと本体雛形データとに基づいて、本体データを生成する。本体データは、ＨＴＭＬデータのうち本体の部分を構成するデータである。例えば、本体生成部１２４は、ＣＰＵ９１１を用いて、構成情報データから、本体雛形データに設けられた空欄を埋めるためのデータを抽出し、抽出したデータで本体雛形データの空欄を埋めて、本体データを生成する。本体生成部１２４は、ＣＰＵ９１１を用いて、生成した本体データを出力する。
【００２４】
ＨＴＭＬ雛形記憶部１１８は、磁気ディスク装置９２０を用いて、あらかじめ、スタイルシートデータとスクリプトデータと本体データとからＨＴＭＬデータを生成するための雛形（以下「ＨＴＭＬ雛形データ」と呼ぶ。）を記憶している。
ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、スタイルシート生成部１２１が出力したスタイルシートデータと、スクリプト生成部１２２が出力したスクリプトデータと、本体生成部１２４が出力した本体データと、ＨＴＭＬ雛形記憶部１１８が記憶したＨＴＭＬ雛形データとを入力する。ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、入力したスタイルシートデータとスクリプトデータと本体データとＨＴＭＬ雛形データとに基づいて、ＨＴＭＬデータを生成する。例えば、ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、スタイルシートデータとスクリプトデータと本体データとを、ＨＴＭＬ雛形データに設けられた空欄にそれぞれ嵌めこんで、ＨＴＭＬデータを生成する。ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、生成したＨＴＭＬデータを出力する。
【００２５】
送受信部１８０は、ＨＴＭＬ要求受信部１８１、ＨＴＭＬ送信部１８２、部品要求受信部１８３、画面部品送信部１８４を有する。
【００２６】
ＨＴＭＬ要求受信部１８１は、通信装置９１５を用いて、ブラウザ装置２００がウェブサーバ装置１００に対して送信したＨＴＭＬ要求を受信する。ＨＴＭＬ要求受信部１８１は、ＣＰＵ９１１を用いて、コード生成部１１０に対して、受信したＨＴＭＬ要求を通知する。コード生成部１１０は、ＨＴＭＬ要求の通知を受けると、ＣＰＵ９１１を用いて、生成したＨＴＭＬデータを出力する。
ＨＴＭＬ送信部１８２は、ＣＰＵ９１１を用いて、コード生成部１１０が出力したＨＴＭＬデータを入力する。ＨＴＭＬ送信部１８２は、通信装置９１５を用いて、ブラウザ装置２００に対して、入力したＨＴＭＬデータを送信する。
【００２７】
部品要求受信部１８３は、通信装置９１５を用いて、ブラウザ装置２００がウェブサーバ装置１００に対して送信した画面部品要求を受信する。部品要求受信部１８３は、ＣＰＵ９１１を用いて、要求転送部１４０に対して、受信した画面部品要求を通知する。要求転送部１４０は、画面部品要求の通知を受けると、ＣＰＵ９１１を用いて、生成した画面部品データを出力する。
画面部品送信部１８４は、ＣＰＵ９１１を用いて、要求転送部１４０が出力した画面部品データを入力する。画面部品送信部１８４は、通信装置９１５を用いて、ブラウザ装置２００に対して、入力した画面部品データを送信する。
【００２８】
要求転送部１４０は、部品提供元判定部１４２、ウェブサービス呼出部１４３、結果取得部１４４、画面部品生成部１４５を有する。
【００２９】
部品提供元判定部１４２は、ＣＰＵ９１１を用いて、送受信部１８０が通知した画面部品要求を入力する。部品提供元判定部１４２は、ＣＰＵ９１１を用いて、入力した画面部品要求に基づいて、要求された画面部品が、ウェブサービスを利用するものであるか否かを判定し、画面部品がウェブサービスを利用するものである場合には、更に、どのウェブサービス提供装置８２０が提供するウェブサービスを利用するものであるかを判定する。部品提供元判定部１４２は、ＣＰＵ９１１を用いて、判定した判定結果を出力する。
ウェブサービス呼出部１４３は、ＣＰＵ９１１を用いて、部品提供元判定部１４２が出力した判定結果を入力する。ウェブサービス呼出部１４３は、通信装置９１５を用いて、入力した判定結果に基づいて、利用するウェブサービスを提供するウェブサービス提供装置８２０に対して、画面部品要求を転送する。
【００３０】
結果取得部１４４は、通信装置９１５を用いて、ウェブサービス提供装置８２０がウェブサーバ装置１００に対して送信したウェブサービスの結果を受信する。結果取得部１４４は、ＣＰＵ９１１を用いて、受信した結果を出力する。ウェブサービス提供装置８２０が送信するウェブサービスの結果は、画面部品データとしてそのまま利用できるものであってもよいし、ＸＭＬ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）形式などによって表わされるデータであってもよい。
画面部品生成部１４５は、ＣＰＵ９１１を用いて、結果取得部１４４が出力した結果を入力する。画面部品生成部１４５は、ＣＰＵ９１１を用いて、入力した結果に基づいて、画面部品データを生成する。画面部品生成部１４５は、ＣＰＵ９１１を用いて、生成した画面部品データを出力する。入力した結果が画面部品データとしてそのまま利用できるものである場合、画面部品生成部１４５は、入力した結果をそのまま画面部品データとして出力する構成であってもよい。
【００３１】
図６は、この実施の形態におけるブラウザ装置２００の機能ブロックの構成の一例を示すブロック構成図である。
ブラウザ装置２００は、ＨＴＭＬ受信部２１１、スクリプト取得部２１２、スタイルシート取得部２１３、本体取得部２１４、初期画面構成部２１５、画面構成記憶部２１６、表示画面生成部２１７、画面表示部２１８、操作入力部２２１、イベント判定部２２２、ＨＴＭＬ要求生成部２２３、ＨＴＭＬ要求送信部２２４、スクリプト実行部２３０を有する。
ＨＴＭＬ受信部２１１は、通信装置９１５を用いて、ウェブサーバ装置１００が送信したＨＴＭＬデータを受信する。
スクリプト取得部２１２は、ＣＰＵ９１１を用いて、ＨＴＭＬ受信部２１１が受信したＨＴＭＬデータから、スクリプトデータを抽出する。
スタイルシート取得部２１３は、ＣＰＵ９１１を用いて、ＨＴＭＬ受信部２１１が受信したＨＴＭＬデータから、スタイルシートデータを抽出する。
本体取得部２１４は、ＣＰＵ９１１を用いて、ＨＴＭＬ受信部２１１が受信したＨＴＭＬデータから、本体データを抽出する。
初期画面構成部２１５は、ＣＰＵ９１１を用いて、スタイルシート取得部２１３が抽出したスタイルシートデータと、本体取得部２１４が抽出した本体データとに基づいて、最初の表示画面の構成を表わすデータ（以下「画面構成データ」と呼ぶ。）を生成する。
画面構成記憶部２１６は、ＲＡＭ９１４を用いて、初期画面構成部２１５が生成した画面構成データを記憶する。
表示画面生成部２１７は、ＣＰＵ９１１を用いて、画面構成記憶部２１６が記憶した画面構成データに基づいて、表示画面を生成する。
画面表示部２１８は、表示装置９０１を用いて、表示画面生成部２１７が生成した表示画面を表示する。
【００３２】
操作入力部２２１は、キーボード９０２やマウス９０３などの入力装置（以下「操作入力装置」と呼ぶ。）を用いて、利用者による操作を入力する。
イベント判定部２２２は、ＣＰＵ９１１を用いて、操作入力部２２１が入力した操作などに基づいて、イベントが発生したか否かを判定する。
ＨＴＭＬ要求生成部２２３は、ＣＰＵ９１１を用いて、イベント判定部２２２が判定したイベントなどに基づいて、ＨＴＭＬ要求をするか否かを判定する。ＨＴＭＬ要求をすると判定した場合、ＨＴＭＬ要求生成部２２３は、ＣＰＵ９１１を用いて、ＨＴＭＬ要求を生成する。ＨＴＭＬ要求をすると判定する場合とは、例えば、利用者が表示画面上に表示されたリンクをクリックした場合などである。
ＨＴＭＬ要求送信部２２４は、通信装置９１５を用いて、ウェブサーバ装置１００に対して、ＨＴＭＬ要求生成部２２３が生成したＨＴＭＬ要求を送信する。
【００３３】
スクリプト実行部２３０は、スクリプト取得部２１２が抽出したスクリプトデータを実行する。この実施の形態におけるウェブサーバ装置１００が生成したスクリプトデータを実行することにより、スクリプト実行部２３０は、パラメータ設定部２３１、部品要求生成部２３２、部品要求送信部２３３、画面部品受信部２３４、画面構成更新部２３５として機能する。
【００３４】
パラメータ設定部２３１は、ＣＰＵ９１１を用いて、イベント判定部２２２が判定した判定結果を入力する。入力した判定結果が、あらかじめ定められたイベントが発生したという判定である場合、パラメータ設定部２３１は、ＣＰＵ９１１を用いて、画面部品要求のパラメータを設定する。パラメータとは、例えば検索する文字列や選択した項目など、そのつど変化する変数の部分である。パラメータ設定部２３１は、ＣＰＵ９１１を用いて、設定したパラメータを出力する。
【００３５】
部品要求生成部２３２は、ＣＰＵ９１１を用いて、パラメータ設定部２３１が出力したパラメータを入力する。部品要求生成部２３２は、ＣＰＵ９１１を用いて、入力したパラメータに基づいて、画面部品要求を生成する。部品要求生成部２３２は、ＣＰＵ９１１を用いて、生成した画面部品要求を出力する。
【００３６】
部品要求送信部２３３は、ＣＰＵ９１１を用いて、部品要求生成部２３２が生成した画面部品要求を入力する。部品要求送信部２３３は、通信装置９１５を用いて、ウェブサーバ装置１００に対して、入力した画面部品要求を送信する。
【００３７】
画面部品受信部２３４は、通信装置９１５を用いて、ウェブサーバ装置１００がブラウザ装置２００に対して送信した画面部品データを受信する。画面部品受信部２３４は、ＣＰＵ９１１を用いて、受信した画面部品データを出力する。
【００３８】
画面構成更新部２３５は、ＣＰＵ９１１を用いて、画面部品受信部２３４が出力した画面部品データを入力する。画面構成更新部２３５は、ＣＰＵ９１１を用いて、入力した画面部品データに基づいて、画面構成記憶部２１６が記憶した画面構成データを更新する。例えば、画面構成更新部２３５は、ＣＰＵ９１１を用いて、画面構成データの指定された位置に、画面部品データを接続することにより、表示画面に画面部品を嵌め込む。画面構成記憶部２１６は、ＲＡＭ９１４を用いて、画面構成更新部２３５が更新した画面構成データを記憶する。表示画面生成部２１７が新しい表示画面を生成し、画面表示部２１８が表示する。
【００３９】
このようにして、ブラウザ装置２００は、利用者の操作に応じてウェブサービスを利用した動きのある表示画面を表示する。
【００４０】
次に、各種データの詳細について説明する。なお、以下の説明では、構成情報データ、レイアウト情報データ、イベント情報データのデータ形式としてＸＭＬ形式を採用しているが、これは一例であり、ＣＳＶ形式、テーブル形式、データベース形式など他のデータ形式であってもよい。その他のデータについても同様であり、以下の説明におけるデータ形式は一例であり、他のデータ形式であってもよい。
以下、図２に示した表示画面４００を生成するためのデータを例にして説明する。
【００４１】
図７は、この実施の形態における構成情報データ５１０の一例を示す図である。
構成情報データ５１０は、一以上の画面部品定義データ５１１を含む。画面部品定義データ５１１は、表示画面４００を構成する画面部品を定義するデータである。この例では、図２に示した表示画面４００が三つの画面部品４１０ａ〜ｃで構成されているのに対応して、構成情報データ５１０が三つの画面部品定義データ５１１ａ〜ｃを含む。
実際に表示する画面部品は、画面部品要求に応じて要求転送部１４０が生成する。したがって、画面部品定義データ５１１は、画面部品の具体的内容を定義するものではなく、画面部品を表示する表示領域などを定義するレイアウト情報データや、その表示領域内で発生したイベントに対する処理などを定義するイベント情報データを、画面部品に紐付けるものである。
画面部品定義データ５１１は、例えば、名称５１２、レイアウト５１３、コントロール５１４、リソース５１５を有する。
名称５１２は、その画面部品を参照する際に使用する識別名（ＩＤ）を表わす。
レイアウト５１３は、レイアウト情報データのうち、その画面部品の表示領域などを定義する部分（以下「レイアウト定義データ」と呼ぶ。）の名称を表わす。
コントロール５１４は、イベント情報データのうち、その画面部品の表示領域内で発生したイベントに関する処理などを定義する部分（以下「コントロール定義データ」と呼ぶ。）の名称を表わす。
リソース５１５は、最初に表示する画面部品を提供する提供元を表わす。画面部品定義データ５１１は、リソース５１５を含まなくてもよく、その場合、最初は何も表示されない。この例において、画面部品定義データ５１１ａによって定義される画面部品４１０ａは、最初にテキストボックス４２１や送信ボタン４２２を表示する必要があるので、画面部品定義データ５１１ａには、リソース５１５が指定されている。これに対し、画面部品定義データ５１１ｂ，ｃによってそれぞれ定義される画面部品４１０ｂ，ｃは、検索文字列が入力されたあとで結果一覧や詳細を表示し、最初は何も表示しなくてよいので、画面部品定義データ５１１ｂ，ｃには、リソース５１５が指定されていない。
【００４２】
図８は、この実施の形態におけるレイアウト情報データ５２０の一例を示す図である。
レイアウト情報データ５２０は、一以上のレイアウト定義データ５２１を含む。レイアウト定義データ５２１は、画面部品の表示位置などを定義するデータである。この例において、レイアウト情報データ５２０は、三つのレイアウト定義データ５２１ａ〜ｃを含む。レイアウト定義データ５２１の数は、表示画面４００を構成する画面部品４１０の数と必ずしも一致しなくてもよい。
レイアウト定義データ５２１は、例えば、名称５２２、上位置５２３、左位置５２４、幅５２５、高さ５２６、スタイル５２７を有する。
名称５２２は、そのレイアウト定義データ５２１を参照する際に使用する識別名を表わす。この例では、汎用性を確保し再利用を可能にするため、レイアウト定義データ５２１を画面部品に直接対応づけるのではなく、画面部品定義データ５１１を介して、画面部品とレイアウト定義データ５２１と紐付ける構成としている。その際、画面部品定義データ５１１に含まれるレイアウト５１３と一致する名称５２２を有するレイアウト定義データ５２１が、その画面部品定義データ５１１によって定義される画面部品に紐付けられる。なお、レイアウト定義データ５２１を画面部品に直接対応づける構成であってもよい。
上位置５２３は、その画面部品を表示する長方形の領域（以下「画面部品領域」と呼ぶ。）の上側の辺と、表示画面の上側の辺との間の距離を表わす。
左位置５２４は、その画面部品の画面部品領域の左側の辺と、表示画面の左側の辺との間の距離を表わす。
幅５２５は、その画面部品の画面部品領域の左側の辺と右側の辺との間の距離を表わす。
高さ５２６は、その画面部品の画面部品領域の上側の辺と下側の辺との間の距離を表わす。
以上の四つによって、その画面部品の画面部品領域の位置及び大きさを指定する。
スタイル５２７は、画面部品領域の位置及び大きさ以外にその画面部品の見た目を指定するために用いる。スタイル５２７は、例えば、画面部品領域の縁を囲むか否か、画面部品の大きさが画面部品領域の大きさより大きい場合どのように表示するかなどを指定する。
【００４３】
図９は、この実施の形態におけるイベント情報データ５３０の一例を示す図である。
イベント情報データ５３０は、一以上のコントロール定義データ５３１を含む。コントロール定義データ５３１は、画面部品で発生したイベントに対する処理などを定義するデータである。この例において、イベント情報データ５３０は、二つのコントロール定義データ５３１ａ，ｂを含む。コントロール定義データ５３１の数は、表示画面４００を構成する画面部品４１０の数と必ずしも一致しなくてもよい。
コントロール定義データ５３１は、例えば、名称５３２、一以上のイベント定義データ５３３を含む。
名称５３２は、そのコントロール定義データ５３１を参照する際に使用する識別名を表わす。この例では、レイアウト定義データ５２１と同様、コントロール定義データ５３１を画面部品に直接対応づけるのではなく、画面部品定義データ５１１を介して、画面部品とコントロール定義データ５３１とを紐付ける構成としている。その際、画面部品定義データ５１１に含まれるコントロール５１４と一致する名称５３２を有するコントロール定義データ５３１が、その画面部品定義データ５１１によって定義される画面部品に紐付けられる。なお、レイアウト定義データ５２１と同様、コントロール定義データ５３１を画面部品に直接対応づける構成であってもよい。
【００４４】
イベント定義データ５３３は、イベントと、そのイベントが発生したときの処理との対応を表わす。この例において、異なるイベントの発生に対して同じ処理をする場合は、一つのイベント定義データ５３３で表わし、処理が異なる場合には、それぞれの処理に対応するイベント定義データ５３３で表わす。したがって、イベント定義データ５３３の数は、その画面部品内で発生したイベントに対する処理の数と同じである。この例において、コントロール定義データ５３１ａは、一つのイベント定義データ５３３ａを含む。コントロール定義データ５３１ｂも、一つのイベント定義データ５３３ｂを含む。
イベント定義データ５３３は、例えば、条件指定データ５４０、動作指定データ５５０を含む。
条件指定データ５４０は、イベントの発生など、動作指定データ５５０が指定する動作を開始する条件を指定する。動作指定データ５５０は、条件指定データ５４０が指定する条件が満たされた場合の動作を指定する。
条件指定データ５４０は、例えば、一以上の条件定義データ５４１を有する。条件定義データ５４１は、動作を開始する条件を表わす。この例において、条件指定データ５４０は、二つの条件定義データ５４１ａ，ｂを有する。条件指定データ５４０が複数の条件定義データ５４１を有する場合、いずれかの条件定義データ５４１が表わす条件が満たされた場合に、動作指定データ５５０が指定する動作を開始することを表わす。
【００４５】
条件定義データ５４１は、例えば、イベント内容５４２、イベント対象５４３を含む。
イベント内容５４２は、動作を開始する条件となるイベントの内容を表わす。イベント対象５４３は、動作を開始する条件となるイベントの発生位置を表わす。
例えば、「ｆｏｒｍ［１］／ｉｎｐｕｔ［２］」は、その画面部品に含まれる一番目のフォームに含まれる二番目の入力要素を表わす。コントロール定義データ５３１ａは、画面部品定義データ５１１ａにより、画面部品４１０ａに紐付けられているので、コントロール定義データ５３１ａ内では、送信ボタン４２２を表わす。同様に、「ｆｏｒｍ［１］／ｉｎｐｕｔ［１］」は、その画面部品に含まれる一番目のフォームに含まれる一番目の入力要素を表わす。コントロール定義データ５３１ａは、画面部品定義データ５１１ａにより、画面部品４１０ａに紐付けられているので、コントロール定義データ５３１ａ内では、テキストボックス４２１を表わす。また、コントロール定義データ５３１ｂは、画面部品定義データ５１１ｂにより、画面部品４１０ｂに紐付けられているので、コントロール定義データ５３１ｂ内では、リストボックス４２３を表わす。
【００４６】
動作指定データ５５０は、例えば、送信内容定義データ５５１、受信後処理定義データ５５６を有する。送信内容定義データ５５１は、画面部品要求としてウェブサーバ装置１００に対して送信する内容を定義する。受信後処理定義データ５５６は、ウェブサーバ装置１００から受信した画面部品をどう処理するかを定義する。
送信内容定義データ５５１は、例えば、送信方式種別５５２、要求先種別５５３、要求先データ５５４、パラメータ種別５５５を有する。
送信方式種別５５２は、例えば「ｐｏｓｔ」や「ｇｅｔ」など、要求先に対してパラメータを渡す方式の種別を表わす。要求先とは、画面部品要求に基づいて画面部品などを生成するウェブサービスを提供するウェブサービス提供装置８２０のことである。
要求先種別５５３は、要求先を指定する指定方式を表わす。要求先データ５５４は、要求先を指定するデータである。例えば、要求先種別５５３が「ｕｒｌ」であれば、要求先データ５５４は、要求先のＵＲＬ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｌｏｃａｔｏｒ）を表わす。
パラメータ種別５５５は、要求先に渡すパラメータをどこから取得するかを表わす。例えば、パラメータ種別５５５が「ｆｏｒｍ」であれば、そのイベントが発生した要素を含むフォームに入力されたデータを、要求先にパラメータとして渡すことを意味する。
受信後処理定義データ５５６は、例えば、処理種別５５７、処理対象部品５５８を有する。
処理種別５５７は、受信した画面部品をどう処理するかを表わす。処理対象部品５５８は、受信した画面部品を作用させる対象となる画面部品を表わす。例えば、処理種別５５７が「ｓｅｔ」であれば、受信した画面部品で、対象となる画面部品を置き換えることを意味する。
【００４７】
図１０は、この実施の形態におけるスタイルシート雛形データ５６０とスタイルシートデータ５７０との一例を示す図である。
スタイルシート雛形データ５６０は、例えば、全体レイアウト雛形データ５６１、個別レイアウト雛形データ５６２を含む。
全体レイアウト雛形データ５６１は、レイアウトデータのうち、個々の画面部品ではなく、全体に関わる部分を生成するための雛形である。
個別レイアウト雛形データ５６２は、レイアウトデータのうち、個々の画面部品に関わる部分を生成するための雛形である。個別レイアウト雛形データ５６２には、一以上の空欄５０２が設けられている。スタイルシート生成部１２１は、構成情報データ５１０やレイアウト情報データ５２０から抽出した文字列で、空欄５０２を埋めることにより、スタイルシートデータ５７０を生成する。この例において、個別レイアウト雛形データ５６２は、六つの空欄５０２ａ〜ｆを有する。なお、この例における全体レイアウト雛形データ５６１には、空欄が設けられていないが、全体レイアウト雛形データ５６１にも空欄を設ける構成であってもよい。
この例において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、画面部品ごとに、個別レイアウト雛形データ５６２の空欄５０２ａ〜ｆを埋めたデータ（以下「個別レイアウトデータ」と呼ぶ。）を生成する。空欄５０２ａには、構成情報データ５１０に含まれる画面部品定義データ５１１から抽出した画面部品の名称５１２を埋める。空欄５０２ｂ〜ｆには、その画面部品定義データ５１１のレイアウト５１３によって指定されるレイアウト定義データ５２１から抽出した上位置５２３、左位置５２４、幅５２５、高さ５２６、スタイル５２７をそれぞれ埋める。構成情報データ５１０が三つの画面部品定義データ５１１ａ〜ｃを含むので、これに対応して、スタイルシート生成部１２１は、三つの個別レイアウトデータ５７２ａ〜ｃを生成する。この例では、全体レイアウト雛形データ５６１に空欄がないが、全体レイアウト雛形データ５６１に空欄がある場合には、同様に、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、全体レイアウト雛形データ５６１の空欄を埋めたデータ（以下「全体レイアウトデータ」と呼ぶ。）を生成する。
スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、生成した全体レイアウトデータ５７１（この例では、全体レイアウト雛形データ５６１に空欄がないので、全体レイアウト雛形データ５６１そのもの）と、三つの個別レイアウトデータ５７２ａ〜ｃとを結合して、スタイルシートデータ５７０を生成する。
【００４８】
図１１は、この実施の形態におけるスタイルシート生成処理Ｓ７１０の流れの一例を示すフローチャート図である。
スタイルシート生成処理Ｓ７１０において、スタイルシート生成部１２１は、スタイルシートデータ５７０を生成する。スタイルシート生成処理Ｓ７１０は、全体空欄選択工程Ｓ７１１、全体埋め込みデータ抽出工程Ｓ７１２、全体データ埋め込み工程Ｓ７１３、全体空欄繰り返し工程Ｓ７１４、画面部品選択工程Ｓ７２０、個別空欄選択工程Ｓ７２１、個別埋め込みデータ抽出工程Ｓ７２２、個別データ埋め込み工程Ｓ７２３、個別空欄繰り返し工程Ｓ７２４、画面部品繰り返し工程Ｓ７２５、結合工程Ｓ７２９を有する。
【００４９】
全体空欄選択工程Ｓ７１１において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、スタイルシート雛形記憶部１１４が記憶した全体レイアウト雛形データ５６１に設けられた空欄のなかから、まだ埋めていない空欄を順に一つずつ選択する。
全体埋め込みデータ抽出工程Ｓ７１２において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データ５１０やレイアウト情報記憶部１１２が記憶したレイアウト情報データ５２０のなかから、全体空欄選択工程Ｓ７１１で選択した空欄を埋めるべきデータを抽出する。
全体データ埋め込み工程Ｓ７１３において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、全体空欄選択工程Ｓ７１１で選択した空欄に、全体埋め込みデータ抽出工程Ｓ７１２で抽出したデータを埋め込む。
全体空欄繰り返し工程Ｓ７１４において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、全体空欄選択工程Ｓ７１１でまだ選択していない空欄があるか否かを判定する。まだ選択していない空欄があると判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、全体空欄選択工程Ｓ７１１に戻り、次の空欄を選択する。すべての空欄を選択したと判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、すべての空欄が埋まった全体レイアウト雛形データ５６１を全体レイアウトデータ５７１として、画面部品選択工程Ｓ７２０へ進む。
【００５０】
画面部品選択工程Ｓ７２０において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データ５１０のなかから、画面部品定義データ５１１を一つずつ順に選択する。
スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、選択した画面部品定義データ５１１用に、スタイルシート雛形記憶部１１４が記憶した個別レイアウト雛形データ５６２の複製を一つ生成する。
個別空欄選択工程Ｓ７２１において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７２０で複製した個別レイアウト雛形データ５６２に設けられた空欄５０２ａ〜ｆのなかから、まだ埋めていない空欄を順に一つずつ選択する。
個別埋め込みデータ抽出工程Ｓ７２２において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７２０で選択した画面部品定義データ５１１のなかから、個別空欄選択工程Ｓ７２１で選択した空欄を埋めるべきデータを抽出する。
個別データ埋め込み工程Ｓ７２３において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、個別空欄選択工程Ｓ７２１で選択した空欄に、個別埋め込みデータ抽出工程Ｓ７２２で抽出したデータを埋め込む。
個別空欄繰り返し工程Ｓ７２４において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、個別空欄選択工程Ｓ７２１でまだ選択していない空欄があるか否かを判定する。まだ選択していない空欄があると判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、個別空欄選択工程Ｓ７２１に戻り、次の空欄を選択する。すべての空欄を選択したと判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、すべての空欄が埋まった個別レイアウト雛形データ５６２を個別レイアウトデータ５７２として、画面部品繰り返し工程Ｓ７２５へ進む。
【００５１】
画面部品繰り返し工程Ｓ７２５において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７２０でまだ選択していない画面部品定義データ５１１があるか否かを判定する。まだ選択していない画面部品定義データ５１１があると判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７２０に戻り、次の画面部品定義データ５１１を選択する。すべての画面部品定義データ５１１を選択したと判定した場合、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、結合工程Ｓ７２９へ進む。
【００５２】
結合工程Ｓ７２９において、スタイルシート生成部１２１は、ＣＰＵ９１１を用いて、全体レイアウトデータ５７１と、個別レイアウトデータ５７２ａ〜ｃとを結合して、スタイルシートデータ５７０を生成する。
【００５３】
図１２は、この実施の形態におけるスクリプト雛形データ５８０とスクリプトデータ５９０との一例を示す図である。
なお、スクリプト雛形データ５８０及びスクリプトデータ５９０は、実際には例えばスクリプト言語で記述されたテキストデータであるが、この図では、処理の内容をわかりやすくするため、フローチャートの形式で表現している。
スクリプト雛形データ５８０は、例えば、初期処理雛形５８１、イベント処理雛形５８２を含む。
初期処理雛形５８１は、スクリプトデータのうち、ブラウザ装置２００がＨＴＭＬデータを読み込んだときにスクリプト実行部２３０が最初に実行する初期処理の部分（以下「初期処理スクリプト」と呼ぶ。）を生成するための雛形である。
イベント処理雛形５８２は、スクリプトデータのうち、イベントが発生したときにスクリプト実行部２３０が実行する処理の部分（以下「イベント処理スクリプト」と呼ぶ。）を生成するための雛形である。
初期処理雛形５８１及びイベント処理雛形５８２には、それぞれ一以上の空欄５０３，５０４が設けられている。スクリプト生成部１２２は、構成情報データ５１０やイベント情報データ５３０から抽出したデータで、空欄５０３，５０４を埋めることにより、スクリプトデータ５９０を生成する。
【００５４】
この例において、初期処理雛形５８１は、イベント設定工程雛形５８３、画面部品要求送信工程雛形５８４、画面部品受信工程雛形５８５、画面部品表示工程雛形５８６を有する。
イベント設定工程雛形５８３は、イベントの発生を監視するための初期設定をする工程のスクリプトを生成するための雛形である。イベント設定工程雛形５８３には、三つの空欄５０３ａ〜ｃが設けられている。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、処理を開始する条件となるイベントごとに、イベント設定工程雛形５８３の空欄５０３ａ〜ｃを埋めたデータ（以下「イベント設定工程スクリプト」と呼ぶ。）を生成する。空欄５０３ａには、イベントの発生を監視する対象となる要素を特定するデータを埋める。スクリプト生成部１２２は、イベント情報データ５３０に含まれる条件定義データ５４１から抽出したイベント対象５４３に基づいて、イベントの発生を監視する対象となる要素を特定するデータを算出する。空欄５０３ｂには、その条件定義データ５５４１から抽出したイベント内容５４２を埋める。空欄５０３ｃには、そのイベントが発生したときに実行する処理を特定するデータ（例えば関数名）を埋める。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、その条件定義データ５４１を含むコントロール定義データ５３１の名称５３２に基づいて、イベントが発生したときに実行する処理を特定するデータを生成する。イベント情報データ５３０が三つの条件定義データ５４１ａ〜ｃを含むので、これに対応して、スクリプト生成部１２２は、三つのイベント設定工程スクリプトを生成する。
【００５５】
画面部品要求送信工程雛形５８４、画面部品受信工程雛形５８５、画面部品表示工程雛形５８６は、それぞれ、最初に表示すべき画面部品を要求する画面部品要求をウェブサーバ装置１００に対して送信し、ウェブサーバ装置１００が送信した画面部品データを受信し、受信した画面部品データに基づいて画面部品を表示する工程のスクリプトを生成するための雛形である。画面部品要求送信工程雛形５８４は、一つの空欄５０３ｄを有する。画面部品受信工程雛形５８５には、空欄が設けられていない。画面部品表示工程雛形５８６は、一つの空欄５０３ｅを有する。スクリプト生成部１２２は、構成情報データ５１０でリソース５１５が指定された画面部品ごとに、画面部品要求送信工程雛形５８４〜画面部品表示工程雛形５８６の空欄５０３ｄ，ｅを埋めたデータ（以下、それぞれ「画面部品要求送信工程スクリプト」「画面部品受信工程スクリプト」「画面部品表示工程スクリプト」と呼ぶ。）を生成する。空欄５０３ｄには、構成情報データ５１０に含まれる画面部品定義データ５１１から抽出したリソース５１５を埋める。空欄５０３ｅには、その画面部品定義データ５１１から抽出した画面部品の名称５１２を埋める。画面部品定義データ５１１のうちリソース５１５が指定されているのは画面部品定義データ５１１ａ一つだけなので、これに対応して、スクリプト生成部１２２は、一つの画面部品要求送信工程スクリプト、画面部品受信工程スクリプト、画面部品表示工程スクリプトを生成する。
【００５６】
スクリプト生成部１２２は、ＣＰＵ９１１を用いて、生成したイベント設定工程スクリプトと、画面部品要求送信工程スクリプトと、画面部品受信工程スクリプトと、画面部品表示工程スクリプトとを結合して、初期処理スクリプト５９１を生成する。
【００５７】
この例において、イベント処理雛形５８２は、画面部品要求送信工程雛形５８７、画面部品受信工程雛形５８８、画面部品表示工程雛形５８９を有する。画面部品要求送信工程雛形５８７、画面部品受信工程雛形５８８、画面部品表示工程雛形５８９は、それぞれ、イベントが発生したときに画面部品要求をウェブサーバ装置１００に対して送信し、ウェブサーバ装置１００が送信した画面部品データを受信し、受信した画面部品データに基づいて画面部品を表示する工程のスクリプトを生成するための雛形である。イベント処理雛形５８２は、空欄５０４ａを有する。画面部品要求送信工程雛形５８７は、三つの空欄５０４ｂ〜ｄを有する。画面部品受信工程雛形５８８には、空欄が設けられていない。画面部品表示工程雛形５８９は、空欄５０４ｅを有する。空欄５０４ａには、イベントが発生したときに実行する処理を特定するデータ（例えば関数名）を埋める。スクリプト生成部１２２は、空欄５０３ｃを埋めるために生成したデータで、対応する空欄５０４ａを埋める。空欄５０４ｂには、イベント定義データ５３３から抽出した要求先データ５５４を埋める。空欄５０４ｃには、そのイベント定義データ５３３から抽出した送信方式種別５５２を埋める。空欄５０４ｄには、そのイベント定義データ５３３から抽出したパラメータ種別５５５を埋める。空欄５０４ｅには、そのイベント定義データ５３３から抽出した処理対象部品５５８を埋める。イベント情報データ５３０が二つのイベント定義データ５３３ａ，ｂを含むので、これに対応して、スクリプト生成部１２２は、二つのイベント処理スクリプト５９２ａ，ｂを生成する。
スクリプト生成部１２２は、ＣＰＵ９１１を用いて、生成した初期処理スクリプト５９１と二つのイベント処理スクリプト５９２ａ，ｂとを結合して、スクリプトデータ５９０を生成する。
【００５８】
図１３は、この実施の形態におけるスクリプト生成処理Ｓ７３０の流れの一例を示すフローチャート図である。
スクリプト生成処理Ｓ７３０において、スクリプト生成部１２２は、スクリプトデータ５９０を生成する。スクリプト生成処理Ｓ７３０は、イベント選択工程Ｓ７３１、イベント設定生成工程Ｓ７３２、イベント繰り返し工程Ｓ７３３、リソース選択工程Ｓ７３６、初期画面部品表示生成工程Ｓ７３７、リソース繰り返し工程Ｓ７３８、動作選択工程Ｓ７４１、イベント画面部品表示生成工程Ｓ７４２、動作繰り返し工程Ｓ７４３、結合工程Ｓ７４９を有する。
【００５９】
イベント選択工程Ｓ７３１において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント情報記憶部１１３が記憶したイベント情報データ５３０のなかから、条件定義データ５４１を一つずつ順に選択する。
イベント設定生成工程Ｓ７３２において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント選択工程Ｓ７３１で選択した条件定義データ５４１用に、スクリプト雛形記憶部１１５が記憶したイベント設定工程雛形５８３の複製を生成する。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント選択工程Ｓ７３１で選択した条件定義データ５４１から抽出した文字列に基づいて生成したデータで、複製したイベント設定工程雛形５８３の空欄５０３ａ〜ｃを埋めて、イベント設定工程スクリプトを生成する。
イベント繰り返し工程Ｓ７３３において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント選択工程Ｓ７３１でまだ選択していない条件定義データ５４１があるか否かを判定する。まだ選択していない条件定義データ５４１があると判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、Ｓイベント選択工程Ｓ７３１に戻り、次の条件定義データ５４１を選択する。すべての条件定義データ５４１を選択したと判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、リソース選択工程Ｓ７３６へ進む。
【００６０】
リソース選択工程Ｓ７３６において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データ５１０のなかから、リソース５１５が指定された画面部品定義データ５１１を一つずつ順に選択する。
初期画面部品表示生成工程Ｓ７３７において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、リソース選択工程Ｓ７３６で選択した画面部品定義データ５１１用に、スクリプト雛形記憶部１１５が記憶した画面部品要求送信工程雛形５８４〜画面部品表示工程雛形５８６の複製を生成する。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、初期画面部品表示生成工程Ｓ７３７で選択した画面部品定義データ５１１から抽出した文字列に基づいて生成したデータで、複製した画面部品要求送信工程雛形５８４〜画面部品表示工程雛形５８６の空欄５０３ｄ，ｅを埋めて、画面部品要求送信工程スクリプト、画面部品受信工程スクリプト、画面部品表示工程スクリプトを生成する。
リソース繰り返し工程Ｓ７３８において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、リソース選択工程Ｓ７３６でまだ選択していない画面部品定義データ５１１があるか否かを判定する。まだ選択していない画面部品定義データ５１１があると判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、リソース選択工程Ｓ７３６に戻り、次の画面部品定義データ５１１を選択する。すべてのリソース５１５が指定された画面部品定義データ５１１を選択したと判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント設定生成工程Ｓ７３２及び初期画面部品表示生成工程Ｓ７３７で生成したスクリプトを結合して、初期処理スクリプト５９１とし、動作選択工程Ｓ７４１へ進む。
【００６１】
動作選択工程Ｓ７４１において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、イベント情報記憶部１１３が記憶したイベント情報データ５３０のなかから、イベント定義データ５３３を一つずつ順に選択する。
イベント画面部品表示生成工程Ｓ７４２において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、動作選択工程Ｓ７４１で選択したイベント定義データ５３３用に、スクリプト雛形記憶部１１５が記憶したイベント処理雛形５８２の複製を生成する。スクリプト生成部１２２は、ＣＰＵ９１１を用いて、動作選択工程Ｓ７４１で選択したイベント定義データ５３３から抽出した文字列に基づいて生成したデータで、複製したイベント処理雛形５８２の空欄５０４ａ〜ｅを埋めて、イベント処理スクリプト５９２を生成する。
動作繰り返し工程Ｓ７４３において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、動作選択工程Ｓ７４１でまだ選択していないイベント定義データ５３３があるか否かを判定する。まだ選択していないイベント定義データ５３３があると判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、動作選択工程Ｓ７４１に戻り、次のイベント定義データ５３３を選択する。すべてのイベント定義データ５３３を選択したと判定した場合、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、結合工程Ｓ７４９へ進む。
【００６２】
結合工程Ｓ７４９において、スクリプト生成部１２２は、ＣＰＵ９１１を用いて、生成した初期処理スクリプト５９１とイベント処理スクリプト５９２とを結合して、スクリプトデータ５９０を生成する。
【００６３】
図１４は、この実施の形態における本体雛形データ６１０と本体データ６２０との一例を示す図である。
本体雛形データ６１０は、例えば、個別本体雛形データ６１１を含む。
個別本体雛形データ６１１は、本体データのうち、個々の画面部品に関わる部分を生成するための雛形である。個別本体雛形データ６１１には、一以上の空欄５０５が設けられている。本体生成部１２４は、構成情報データ５１０から抽出した文字列で、空欄５０５を埋めることにより、本体データ６２０を生成する。この例において、個別本体雛形データ６１１には、一つの空欄５０５が設けられている。
この例において、本体生成部１２４は、ＣＰＵ９１１を用いて、画面部品ごとに、個別本体雛形データ６１１の空欄５０５を埋めたデータ（以下「個別本体データ」と呼ぶ。）を生成する。空欄５０５には、構成情報データ５１０から抽出した画面部品の名称５１２を埋める。構成情報データ５１０が三つの画面部品定義データ５１１ａ〜ｃを含むので、これに対応して、本体生成部１２４は、三つの個別本体データを生成する。
本体生成部１２４は、生成した個別本体データを結合して、本体データ６２０を生成する。
【００６４】
図１５は、この実施の形態における本体生成処理Ｓ７５０の流れの一例を示すフローチャート図である。
本体生成処理Ｓ７５０において、本体生成部１２４は、本体データ６２０を生成する。本体生成処理Ｓ７５０は、画面部品選択工程Ｓ７５１、個別本体生成工程Ｓ７５２、画面部品繰り返し工程Ｓ７５３、結合工程Ｓ７５９を有する。
【００６５】
画面部品選択工程Ｓ７５１において、本体生成部１２４は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データ５１０のなかから、画面部品定義データ５１１を一つずつ順に選択する。
個別本体生成工程Ｓ７５２において、本体生成部１２４は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７５１で選択した画面部品定義データ５１１用に、本体雛形記憶部１１７が記憶した個別本体雛形データ６１１の複製を生成する。本体生成部１２４は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７５１で選択した画面部品定義データ５１１から抽出した文字列で、複製した個別本体雛形データ６１１の空欄５０５を埋めて、個別本体データを生成する。
画面部品繰り返し工程Ｓ７５３において、本体生成部１２４は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７５１でまだ選択していない画面部品定義データ５１１があるか否かを判定する。まだ選択していない画面部品定義データ５１１があると判定した場合、本体生成部１２４は、ＣＰＵ９１１を用いて、画面部品選択工程Ｓ７５１に戻り、次の画面部品定義データ５１１を選択する。すべての画面部品定義データ５１１を選択したと判定した場合、本体生成部１２４は、ＣＰＵ９１１を用いて、結合工程Ｓ７５９へ進む。
【００６６】
結合工程Ｓ７５９において、本体生成部１２４は、個別本体生成工程Ｓ７５２で生成した個別本体データを結合して、本体データ６２０を生成する。
【００６７】
図１６は、この実施の形態におけるＨＴＭＬ雛形データ６３０とＨＴＭＬデータ６４０との一例を示す図である。
ＨＴＭＬ雛形データ６３０には、一以上の空欄５０６が設けられている。ＨＴＭＬ生成部１２５は、ＨＴＭＬ雛形データ６３０の空欄５０６を埋めることにより、ＨＴＭＬデータ６４０を生成する。この例において、ＨＴＭＬ雛形データ６３０には、四つの空欄５０６ａ〜ｄが設けられている。
空欄５０６ａには、構成情報データ５１０から抽出した表題を埋める。空欄５０６ｂには、スタイルシート生成部１２１が生成したスタイルシートデータ５７０を埋める。空欄５０６ｃには、スクリプト生成部１２２が生成したスクリプトデータ５９０を埋める。空欄５０６ｄには、本体生成部１２４が生成した本体データ６２０を埋める。
【００６８】
図１７は、この実施の形態におけるＨＴＭＬ生成処理Ｓ７６０の流れの一例を示すフローチャート図である。
ＨＴＭＬ生成処理Ｓ７６０において、ＨＴＭＬ生成部１２５は、ＨＴＭＬデータ６４０を生成する。ＨＴＭＬ生成処理Ｓ７６０は、表題埋め込み工程Ｓ７６１、スタイルシート埋め込み工程Ｓ７６２、スクリプト埋め込み工程Ｓ７６３、本体埋め込み工程Ｓ７６４を有する。
【００６９】
表題埋め込み工程Ｓ７６１において、ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、ＨＴＭＬ雛形記憶部１１８が記憶したＨＴＭＬ雛形データ６３０の複製を生成する。ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、構成情報記憶部１１１が記憶した構成情報データ５１０から表題を抽出する。ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、抽出した表題で、複製したＨＴＭＬ雛形データ６３０の空欄５０６ａを埋める。
スタイルシート埋め込み工程Ｓ７６２において、ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、スタイルシート生成部１２１が生成したスタイルシートデータ５７０で、複製したＨＴＭＬ雛形データ６３０の空欄５０６ｂを埋める。
スクリプト埋め込み工程Ｓ７６３において、ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、スクリプト生成部１２２が生成したスクリプトデータ５９０で、複製したＨＴＭＬ雛形データ６３０の空欄５０６ｃを埋める。
本体埋め込み工程Ｓ７６４において、ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、本体生成部１２４が生成した本体データ６２０で、複製したＨＴＭＬ雛形データ６３０の空欄５０６ｄを埋める。ＨＴＭＬ生成部１２５は、ＣＰＵ９１１を用いて、すべての空欄５０６ａ〜ｄが埋まったＨＴＭＬ雛形データ６３０を、ＨＴＭＬデータ６４０として出力する。
【００７０】
図１８は、この実施の形態における画面部品データ６５０と画面構成データ６６０との一例を示す図である。
なお、この例では、画面構成データ６６０をＨＴＭＬの形式で表現しているが、画面構成記憶部２１６は、内部表現形式に変換した形で、画面構成データ６６０を記憶する構成であってもよい。
【００７１】
ブラウザ装置２００では、ＨＴＭＬ受信部２１１が、ウェブサーバ装置１００がブラウザ装置２００に対して送信したＨＴＭＬデータ６４０を受信し、スクリプト実行部２３０が、スクリプトデータ５９０を実行する。これにより、スクリプト実行部２３０は、部品要求送信部２３３として、ウェブサーバ装置１００に対して画面部品要求を送信し、画面部品受信部２３４として、ウェブサーバ装置１００が送信した画面部品データ６５０を受信する。
【００７２】
画面部品データ６５０は、例えば、ＨＴＭＬ形式で表現されたテキストデータである。ただし、画面部品データ６５０は、ＨＴＭＬデータ６４０のような完全な形のＨＴＭＬではなく、１または複数の要素を表わすＨＴＭＬの断片である。この例において、画面部品データ６５０は、「ｉｎｐｕｔ」要素などを含む一つの「ｆｏｒｍ」要素を表わす。
【００７３】
スクリプト実行部２３０は、ＣＰＵ９１１を用いて、画面構成更新部２３５として、画面部品受信部２３４として受信した画面部品データ６５０に基づいて、画面構成記憶部２１６が記憶した画面構成データ６６０を更新する。例えば、画面構成更新部２３５は、指定された「ｄｉｖ」要素の内容６６１として、画面部品データ６５０を張り付ける。更新された画面構成データ６６０に基づいて、表示画面生成部２１７が表示画面を生成し、画面表示部２１８が表示することにより、画面部品データ６５０に基づく画面部品が表示される。
【００７４】
図１９は、この実施の形態における画面部品生成表示処理の流れの一例を示すフローチャート図である。
【００７５】
ブラウザ装置２００は、ウェブサーバ装置１００がブラウザ装置２００に対して送信したＨＴＭＬデータ６４０を受信し、受信したＨＴＭＬデータ６４０からスクリプトデータ５９０を取得し、取得したスクリプトデータ５９０を実行することにより、初期処理、イベント処理１、イベント処理２などの処理をする。
初期処理は、例えば、イベント設定工程Ｓ７７１、画面部品要求送信工程Ｓ７７２ａ、画面部品受信工程Ｓ７７３ａ、画面部品表示工程Ｓ７７４ａを有する。
イベント処理１は、画面部品要求送信工程Ｓ７７２ｂ、画面部品受信工程Ｓ７７３ｂ、画面部品表示工程Ｓ７７４ｂを有する。
イベント処理２は、画面部品要求送信工程Ｓ７７２ｃ、画面部品受信工程Ｓ７７３ｃ、画面部品表示工程Ｓ７７４ｃを有する。
【００７６】
ウェブサーバ装置１００は、転送処理をする。転送処理は、画面部品要求受信工程Ｓ７８１、画面部品要求転送工程Ｓ７８２、結果取得工程Ｓ７８３、画面部品送信工程Ｓ７８４を有する。
【００７７】
ウェブサービス提供装置８２０は、サービス提供処理をする。サービス提供処理は、要求受信工程Ｓ７９１、結果生成工程Ｓ７９２、結果送信工程Ｓ７９３を有する。
【００７８】
イベント設定工程Ｓ７７１において、スクリプト実行部２３０は、ＣＰＵ９１１を用いて、処理を開始する条件となるイベントを、監視対象として設定する。イベント判定部２２２は、ＣＰＵ９１１を用いて、監視対象として設定されたイベントが発生したか否かを監視し、発生した場合、スクリプト実行部２３０に対して通知する。スクリプト実行部２３０は、この通知を受けて、イベント処理１、イベント処理２など、そのイベント発生時に実行すべき処理を実行する。
【００７９】
画面部品要求送信工程Ｓ７７２ａ〜ｃにおいて、パラメータ設定部２３１は、ＣＰＵ９１１を用いて、パラメータを設定する。部品要求生成部２３２は、ＣＰＵ９１１を用いて、パラメータ設定部２３１が設定したパラメータに基づいて、画面部品要求を生成する。部品要求送信部２３３は、通信装置９１５を用いて、ウェブサーバ装置１００に対して、部品要求生成部２３２が生成した画面部品要求を送信する。
【００８０】
画面部品要求受信工程Ｓ７８１において、部品要求受信部１８３は、通信装置９１５を用いて、ブラウザ装置２００がウェブサーバ装置１００に対して送信した画面部品要求を受信する。
画面部品要求転送工程Ｓ７８２において、部品提供元判定部１４２は、ＣＰＵ９１１を用いて、画面部品要求受信工程Ｓ７８１で部品要求受信部１８３が受信した画面部品要求を転送すべきウェブサービス提供装置８２０を判定する。ウェブサービス呼出部１４３は、通信装置９１５を用いて、部品提供元判定部１４２が判定したウェブサービス提供装置８２０に対して、画面部品要求受信工程Ｓ７８１で部品要求受信部１８３が受信した画面部品要求を転送する。
【００８１】
要求受信工程Ｓ７９１において、ウェブサービス提供装置８２０は、画面部品要求転送工程Ｓ７８２でウェブサーバ装置１００がウェブサービス提供装置８２０に対して転送した画面部品要求を受信する。
結果生成工程Ｓ７９２において、ウェブサービス提供装置８２０は、要求受信工程Ｓ７９１で受信した画面部品要求に基づいて、ウェブサービスを提供し、提供したウェブサービスの結果を表わす結果データを生成する。
結果送信工程Ｓ７９３において、ウェブサービス提供装置８２０は、ウェブサーバ装置１００に対して、結果生成工程Ｓ７９２で生成した結果データを送信する。
【００８２】
結果取得工程Ｓ７８３において、結果取得部１４４は、通信装置９１５を用いて、結果送信工程Ｓ７９３でウェブサービス提供装置８２０が送信した結果データを受信する。ウェブサービス提供装置８２０が画面部品データとしてそのまま使える結果データを返す構成の場合、画面部品生成部１４５は、ＣＰＵ９１１を用いて、結果取得部１４４が受信した結果データを、画面部品データ６５０とする。
画面部品送信工程Ｓ７８４において、画面部品送信部１８４は、通信装置９１５を用いて、ブラウザ装置２００に対して、結果取得工程Ｓ７８３で画面部品生成部１４５が生成した画面部品データ６５０を送信する。
【００８３】
画面部品受信工程Ｓ７７３ａ〜ｃにおいて、画面部品受信部２３４は、通信装置９１５を用いて、ウェブサーバ装置１００がブラウザ装置２００に対して送信した画面部品データ６５０を受信する。
画面部品表示工程Ｓ７７４ａ〜ｃにおいて、画面構成更新部２３５は、ＣＰＵ９１１を用いて、受信した画面部品データ６５０に基づいて、画面構成記憶部２１６が記憶した画面構成データ６６０を更新する。表示画面生成部２１７は、ＣＰＵ９１１を用いて、画面構成更新部２３５が更新した画面構成データ６６０に基づいて、表示画面を生成する。画面表示部２１８は、表示装置９０１を用いて、表示画面生成部２１７が生成した表示画面を表示する。
【００８４】
この実施の形態におけるコード生成部１１０は、画面部品提供装置（ウェブサービス提供装置８２０）が提供する画面部品により構成される表示画面を画面表示装置（ブラウザ装置２００）に表示させる画面表示プログラム（ＨＴＭＬデータ６４０）を生成する画面表示プログラム生成装置である。
画面表示プログラム生成装置は、データを記憶する記憶装置（磁気ディスク装置９２０）と、データを処理する処理装置（ＣＰＵ９１１）と、レイアウト情報記憶部１１２と、イベント情報記憶部１１３と、レイアウト生成部（スタイルシート生成部１２１、本体生成部１２４）と、部品表示生成部（スクリプト生成部１２２）と、画面表示プログラム生成部（ＨＴＭＬ生成部１２５）とを有する。
上記レイアウト情報記憶部１１２は、上記記憶装置を用いて、上記表示画面のなかで上記画面部品を表示する表示位置を表わすレイアウト情報データ５２０を記憶する。
上記イベント情報記憶部１１３は、上記記憶装置を用いて、上記表示位置に上記画面部品を表示する表示条件を表わすイベント情報データ５３０を記憶する。
上記レイアウト生成部は、上記処理装置を用いて、上記レイアウト情報記憶部１１２が記憶したレイアウト情報データ５２０に基づいて、レイアウトプログラム（スタイルシートデータ５７０、本体データ６２０）を生成する。上記レイアウトプログラムは、上記画面部品を表示するための表示領域を上記表示位置に表示させるプログラムである。
上記部品表示生成部は、上記処理装置を用いて、上記イベント情報記憶部１１３が記憶したイベント情報データ５３０に基づいて、部品表示プログラム（スクリプトデータ５９０）を生成する。上記部品表示プログラムは、上記表示条件が満たされている（イベントが発生した）か否かを判定して、上記表示条件が満たされていると判定した場合に上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求し、上記画面部品提供装置が提供した画面部品を上記表示領域に表示させるプログラムである。
上記画面表示プログラム生成部は、上記処理装置を用いて、上記レイアウト生成部が生成したレイアウトプログラムと、上記部品表示生成部が生成した部品表示プログラムとを結合して、上記画面表示プログラムを生成する。
【００８５】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）によれば、レイアウト生成部（スタイルシート生成部１２１、本体生成部１２４）が、レイアウト情報データ５２０に基づいて、画面部品を表示する表示領域をあらかじめ用意させるレイアウトプログラム（スタイルシートデータ５７０、本体データ６２０）を生成し、部品表示生成部（スクリプト生成部１２２）が、イベント情報データ５３０に基づいて、イベントの発生などの条件が満たされた場合に画面部品を取得して表示させる部品表示プログラム（スクリプトデータ５９０）を生成するので、画面表示プログラム（ＨＴＭＬデータ６４０）を自動生成することができる。
【００８６】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）において、上記部品表示プログラム（スクリプトデータ５９０）は、上記画面部品提供装置（ウェブサービス提供装置８２０）に対して上記表示領域に表示する画面部品の提供を要求する画面部品要求を、所定の要求転送装置（送受信部１８０、要求転送部１４０）に対して送信し、上記画面部品提供装置が提供した画面部品を、上記要求転送装置から受信させるプログラムである。
【００８７】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）によれば、画面部品要求を画面部品提供装置（ウェブサービス提供装置８２０）に転送する要求転送装置（送受信部１８０、要求転送部１４０）に対して画面部品要求を送信させる部品表示プログラム（スクリプトデータ５９０）を、部品表示生成部（スクリプト生成部１２２）が生成するので、セキュリティなどの制約により、画面表示装置（ブラウザ装置２００）から画面部品提供装置に対して画面部品要求を直接送信できない場合であっても、画面部品提供装置に対して画面部品要求をすることができる。
【００８８】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）において、上記画面表示プログラム（ＨＴＭＬデータ６４０）は、ＨＴＭＬ形式のテキストデータである。
上記部品表示プログラム（スクリプトデータ５９０）は、上記画面部品を表わすデータ（画面部品データ）として、ＨＴＭＬの要素を表わすＨＴＭＬ形式のテキストデータを受信し、受信したテキストデータから上記画面部品を生成させるプログラムである。
【００８９】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）によれば、画面表示プログラムが、ＨＴＭＬ形式のテキストデータであり、部品表示プログラムが、ＨＴＭＬの要素を表わすＨＴＭＬ形式のテキストデータを、画面部品を表わすデータとして受信するプログラムなので、画面部品を容易に表示することができ、クライアント側である画面表示装置（ブラウザ装置２００）の負荷を減らすことができる。
【００９０】
この実施の形態における画面表示システム８００は、画面部品提供装置（ウェブサービス提供装置８２０）を有する。
上記画面部品提供装置は、上記画面表示装置（ブラウザ装置２００）からの要求に基づいて、上記画面表示装置に対して画面部品を提供する。
【００９１】
この実施の形態における画面表示システム８００によれば、画面部品提供装置（ウェブサービス提供装置８２０）が画面部品を提供し、画面表示装置（ブラウザ装置２００）が、画面部品提供装置が提供した画面部品により表示画面４００を構成するので、表示画面４００を容易に構成することができる。
【００９２】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）は、データを記憶する記憶装置（磁気ディスク装置９２０）と、データを処理する処理装置（ＣＰＵ９１１）とを有するコンピュータを上記画面表示プログラム生成装置として機能させるコンピュータプログラムを、上記コンピュータが実行することにより、実現することができる。
【００９３】
この実施の形態におけるコンピュータプログラムによれば、レイアウト生成部（スタイルシート生成部１２１、本体生成部１２４）が、レイアウト情報データ５２０に基づいて、画面部品を表示する表示領域をあらかじめ用意させるレイアウトプログラム（スタイルシートデータ５７０、本体データ６２０）を生成し、部品表示生成部（スクリプト生成部１２２）が、イベント情報データ５３０に基づいて、イベントの発生などの条件が満たされた場合に画面部品を取得して表示させる部品表示プログラム（スクリプトデータ５９０）を生成することにより、画面表示プログラム（ＨＴＭＬデータ６４０）を自動生成することができる画面表示プログラム生成装置（コード生成部１１０）を実現することができる。
【００９４】
この実施の形態におけるコード生成部１１０（画面表示プログラム生成装置）が、画面部品提供装置（ウェブサービス提供装置８２０）が提供する画面部品により構成される表示画面を画面表示装置（ブラウザ装置２００）に表示させる画面表示プログラム（ＨＴＭＬデータ６４０）を生成する画面表示プログラム生成方法は、以下の工程を有する。
上記処理装置（ＣＰＵ９１１）が、上記表示画面に上記画面部品を表示する表示位置を表わすレイアウト情報データ５２０に基づいて、レイアウトプログラム（スタイルシートデータ５７０、本体データ６２０）を生成する。上記レイアウトプログラムは、上記画面部品を表示するための表示領域を上記表示位置に表示させるプログラムである。
上記処理装置が、上記表示位置に上記画面部品を表示する表示条件を表わすイベント情報データ５３０に基づいて、部品表示プログラム（スクリプトデータ５９０）を生成する。上記部品表示プログラムは、上記表示条件が満たされている（イベントが発生した）か否かを判定して、上記表示条件が満たされていると判定した場合に上記画面部品提供装置に対して上記表示領域に表示する画面部品の提供を要求し、上記画面部品提供装置が提供した画面部品を上記表示領域に表示させるプログラムである。
上記処理装置が、生成したレイアウトプログラムと、生成した部品表示プログラムとを結合して、上記画面表示プログラムを生成する。
【００９５】
この実施の形態における画面表示プログラム生成方法によれば、レイアウト情報データ５２０に基づいて、画面部品を表示する表示領域をあらかじめ用意させるレイアウトプログラム（スタイルシートデータ５７０、本体データ６２０）を生成し、イベント情報データ５３０に基づいて、イベントの発生などの条件が満たされた場合に画面部品を取得して表示させる部品表示プログラム（スクリプトデータ５９０）を生成するので、画面表示プログラム（ＨＴＭＬデータ６４０）を自動生成することができる。
【００９６】
以上説明したウェブサーバ装置１００は、ウェブサービスを統合し、ウェブサービスの動作を含む、動的なウェブ画面を自動で生成することができるウェブサービス統合装置である。
ウェブサービス統合装置は、ウェブブラウザ装置２００に表示する画面をレイアウトと画面部品とで構成する。
画面部品サービス提供部（要求転送部１４０、ウェブサービス提供装置８２０）は、画面部品に表示情報を与える。
統合画面定義情報記憶部（構成情報記憶部１１１、レイアウト情報記憶部１１２、イベント情報記憶部１１３）は、統合画面のレイアウト情報データ５２０、画面イベントと画面部品サービス及び、結果配置先画面部品の関係を記述したイベント情報データ５３０を保持する。
ウェブ画面自動生成部（スタイルシート生成部１２１、スクリプト生成部１２２、本体生成部１２４、ＨＴＭＬ生成部１２５）は、設定された統合画面定義情報に従いウェブ画面を自動で生成する。
ウェブブラウザ装置２００は、画面のイベントをウェブ統合サーバ（ウェブサーバ装置１００）に通知する。
サービス呼出部（要求転送部１４０）は、イベントから対応する画面部品サービスを呼び出し、結果のコンテンツを返す。
ウェブブラウザ装置２００は、受け取ったコンテンツを画面の一部に切り替える。
これにより、容易に画面表示を変更することが可能となる。
【００９７】
統合画面生成部（スタイルシート生成部１２１、スクリプト生成部１２２、本体生成部１２４、ＨＴＭＬ生成部１２５）は、統合画面定義情報（構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０）を用いて、ウェブ画面である統合画面（ＨＴＭＬデータ６４０）を生成する。統合画面生成部は、統合画面定義情報を変換して、統合画面を構築する要素である生成画面部品、統合画面の各画面部品の位置やサイズを決定する画面レイアウト、イベント制御機能プログラムを生成し、これらの要素を統合して、統合画面を生成する。
【００９８】
定義情報の変換後のデータ形式は、生成された要素を統合した際にウェブ画面を生成できるデータ形式とする。例えば、画面部品としてｄｉｖ要素、画面レイアウトとしてＣＳＳ（カスケードスタイルシート）、イベント制御機能プログラムとしてＪａｖａＳｃｒｉｐｔ（登録商標）を用いることができるが、これに限定するものではない。
【００９９】
サービス転送部（要求転送部１４０）は、統合画面（ＨＴＭＬデータ６４０）内のイベント制御機能プログラム（スクリプトデータ５９０）を実行するウェブブラウザ装置２００からのリクエストを受け取り、指定されたウェブサービスへ転送し、ウェブサービスからのレスポンスをウェブブラウザ装置２００に転送する。例えば、ウェブサービスのリクエストが、統合画面を生成したホストにしか送信できないといった制限がある場合であっても、ウェブ統合サーバ（ウェブサーバ装置１００）から、画面部品サービス提供部（ウェブサービス提供装置８２０）にリクエストを転送することで、ウェブサービスの呼び出しを行なうことが出来るようにする。
【０１００】
画面部品サービス提供部は、リクエストに従い、画面表示用情報（画面部品データ６５０）をレスポンスとして返却する画面部品サービスを提供する。画面表示用情報は、ウェブブラウザ装置２００で画面表示を行うための情報である。例えば、ＨＴＭＬやＸＭＬなどのソースコードや、その一部であるが、これらに限定するものではない。また、新規に作成したソースコードだけでなく、既存ウェブシステムのソースコードの一部も使用してもよいが、これらに限定するものではない。
なお、画面表示用情報の一部として、データのみを返却するウェブサービス（以下「データサービス」と呼ぶ。）のレスポンスを内部で加工し、使用してもよい。例えば、データサービスのレスポンスをグラフにして表示するような場合である。
【０１０１】
統合画面定義情報（構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０）は、画面部品サービスを組み合わせるための設定であり、統合画面を生成するための定義情報を持っている。
統合画面定義情報は、大きく分けて、ブラウザに画面を表示するための表示情報部分（レイアウト情報データ５２０）と、ユーザの画面操作に対し処理を行なうための動作情報部分（イベント情報データ５３０）とに分けることが出来る。また、これらの情報はそのままでは関連がないため、二つの情報を組み合わせる情報である画面部品情報（構成情報データ５１０）を持つ。以上の三つの情報を持つことにより、動的な統合画面が自動生成可能となる。統合画面定義情報の記述形式としてはＸＭＬを用いることができるが、これに限定するものではない。
表示情報部分の定義であるレイアウト情報データ５２０には、統合画面内での画面部品の位置、画面部品のサイズなど、ウェブ画面として表示するための設定要素がある。
レイアウト定義データ５２１は、それぞれ異なる画面部品で使用される画面レイアウトである。レイアウト定義データ５２１は、統合画面内での画面部品の位置を表わすデータ（上位置５２３、左位置５２４）、画面部品のサイズを表わすデータ（幅５２５、高さ５２６）を含む。
【０１０２】
動作情報部分の定義であるイベント情報データ５３０には、画面部品内におけるユーザ操作、ユーザ操作に対応する処理、取得ウェブサービスＵＲＩ、パラメータの取得元、レスポンスの出力先などの設定要素がある。このとき、ある画面部品からのリクエストで実行されたレスポンスの戻り先を、別の画面部品にすることで、画面部品間の連携が可能となる。
【０１０３】
例えば、検索機能を持つ画面部品内の入力フォームに検索用文字列を入力し実行すると、別の画面部品内に検索結果の画面が表示されるようにすることができる。入力元である画面部品に対し、送信ボタンをクリックもしくはエンターキーを押下というユーザ操作を行なうと、イベント制御機能プログラムを実行しているウェブブラウザ装置２００は、指定されたウェブサービスへ、フォームに入力された文字列を送信し、戻ってきたデータを出力先である別の画面部品に返却するという処理を行なう。この場合、イベント情報データ５３０には、ユーザ操作として「送信ボタンをクリック」「エンターキーを押下」、ユーザ操作に対する処理として「送信」、取得ウェブサービスＵＲＩとして「指定されたウェブサービスのＵＲＩ」、パラメータの取得元として「フォーム」、レスポンスの出力先として「別の画面部品」を、それぞれ設定しておく。
イベント情報のソースコード（イベント情報データ５３０）内では、例えば、ユーザ操作として「ｔｙｐｅ＝”ｃｌｉｃｋ”  ｘｐａｔｈ＝”ｆｏｒｍ［１］／ｉｎｐｕｔ［２］」、取得ウェブサービスＵＲＩとして「ｈｔｔｐ：／／ｈｏｓｔ２／ｓｅｒｖｉｃｅ／ｓｅａｒｃｈ」、パラメータの取得元として「ｆｏｒｍ」、レスポンスの出力先として「ｓａｍｐｌｅＬｉｓｔ」などの文字列により、これらの設定を指定する。
【０１０４】
画面部品情報（構成情報データ５１０）には、当該画面部品名（名称５１２）、当該画面部品内で使用する動作情報の要素（コントロール５１４）、当該画面部品に適用するレイアウト情報（レイアウト５１３）などの設定要素がある。画面部品として表示される画面部品サービスは、イベント情報に定義されている。画面部品情報は、動作情報と表示情報を関連付ける定義である。
画面部品情報のソースコード（構成情報データ５１０）内では、画面部品それぞれに対して画面部品定義データ５１１をもっており、画面部品名として「ｓａｍｐｌｅＦｏｒｍ」、使用レイアウト定義として「ｓａｍｐｌｅＦｏｒｍＬａｙｏｕｔ」、使用イベント定義として「ｓａｍｐｌｅＦｏｒｍＣｏｎｔｒｏｌ」などの文字列により、画面部品の設定を指定する。
【０１０５】
統合画面（ＨＴＭＬデータ６４０）は、統合画面定義情報にしたがって自動生成される。ウェブブラウザ装置２００が統合画面を表示すると、画面部品を統合画面定義情報により組み合わせた画面を表示する。
画面部品は、統合画面定義情報にしたがい統合画面生成部によって統合画面の一部として生成される。画面部品は、画面部品サービスから得られる画面表示用情報の組み込み先となる。画面部品は、通常複数存在する。
【０１０６】
画面部品の構成要素は、例えば、画面部品としてｄｉｖ要素、画面レイアウトとしてｌａｙｏｕｔ属性、イベント制御機能プログラムとしてｃｏｎｔｒｏｌ属性などがある。画面部品サービスは、ｄｉｖ要素内にコンテンツのような形式で組み込む。
【０１０７】
イベント制御機能プログラム（スクリプトデータ５９０）は、ユーザが画面部品に行なった操作に対し、処理を行なうプログラムである。統合画面生成部が統合画面定義情報の動作情報部分の定義であるイベント情報データ５３０を変換することで自動生成される。イベント情報を変換した結果としてＪａｖａＳｃｒｉｐｔ（登録商標）を用いることができるが、これに限定するものではない。
【０１０８】
ウェブサービス統合装置（ウェブサーバ装置１００）は、統合画面（ＨＴＭＬデータ６４０）を生成し、ユーザの画面操作に従ってウェブサービスを行なう。
【０１０９】
ウェブサービス統合装置が実行されると、統合画面生成部が統合画面（ＨＴＭＬデータ６４０）の生成を行なう。ユーザが統合画面に初めてアクセスした際、統合画面（ＨＴＭＬデータ６４０）に基づいてウェブブラウザ装置２００が画面部品サービスの表示画面用情報を表示する。ユーザが統合画面内の画面部品に対しユーザ操作を行なうと、ウェブサービス統合装置は、画面部品サービスのレスポンス（画面部品データ６５０）をウェブブラウザ装置２００に返却する。なお、初回アクセス時には統合画面（ＨＴＭＬデータ６４０）の読み込みがトリガーとなって、ウェブブラウザ装置２００がイベント情報制御プログラム（スクリプトデータ５９０）を実行し、ユーザ操作無しにウェブサービスを取得する。
【０１１０】
ウェブサービス統合装置が統合画面（ＨＴＭＬデータ６４０）を生成する動作は、例えば、以下の通りである。
ウェブサービス統合装置が実行されると、統合画面生成部は、統合画面定義情報の画面部品情報（構成情報データ５１０）を読み込み、画面部品（本体データ６２０）を生成する。統合画面生成部は、統合画面定義情報のレイアウト情報データ５２０を読み込み、統合画面用のレイアウト（スタイルシートデータ５７０）を生成する。統合画面生成部は、統合画面定義情報のイベント情報データ５３０を読み込み、イベント制御機能プログラム（スクリプトデータ５９０）を生成する。統合画面生成部は、生成した画面部品と画面レイアウトとイベント制御機能プログラムとを用いて、統合画面（ＨＴＭＬデータ６４０）を生成する。ウェブサービス統合装置は、統合画面生成部が生成した統合画面のキャッシュを内部に保持しておき、ウェブブラウザ装置２００からのリクエストに応じて、送信する。なお、ユーザが統合画面のアドレスにアクセスするなどウェブブラウザ装置２００からのリクエストがあってから、統合画面を生成し、キャッシュとして保持しない構成でもよい。
【０１１１】
ユーザが統合画面に初めてアクセスした際の動作は、例えば、以下の通りである。
ユーザはブラウザ装置２００を通してウェブ統合サーバ（ウェブサーバ装置１００）に統合画面（ＨＴＭＬデータ６４０）の取得要求を出す。統合サーバは、統合画面生成部が統合画面を生成して、ブラウザ装置２００に返却する。ブラウザ装置２００がイベント制御機能プログラム（スクリプトデータ５９０）を実行して、最初に表示する画面部品を取得するため、設定されたサービスへのリクエストを出す。イベント制御機能プログラムを実行しているブラウザ装置２００は、リクエスト処理（画面部品要求）をリクエスト転送部（送受信部１８０）に出す。サービス転送部（要求転送部１４０）は、受け取ったリクエストを画面部品サービス提供部（ウェブサービス提供装置８２０）に転送する。画面部品サービス提供部が表示用データとしてデータサービスを使用する場合、画面部品サービス提供部は、データサービス提供部（他のウェブサービス提供装置８２０）にリクエストを出し、データサービス提供部のレスポンスを、自身のもつ表示画面用情報と統合して、自身のレスポンスを生成する。画面部品サービス提供部は、レスポンスをウェブ統合サーバ内のリクエスト転送部（要求転送部１４０）に返却する。リクエスト転送部（送受信部１８０）は、ウェブサービスの戻り値をイベント制御機能プログラムを実行しているブラウザ装置２００に返却する。イベント制御機能プログラムを実行しているブラウザ装置２００は、リクエスト転送部から返却されたデータをもとに、画面部品４１０を更新する。ブラウザ装置２００は、統合画面（表示画面４００）を更新する。
【０１１２】
ユーザが画面部品にユーザ操作を行った際の動作は、例えば、以下の通りである。
ユーザはブラウザ装置２００を通して統合画面（表示画面４００）内に表示された画面部品４１０にユーザ操作を行う。ブラウザ装置２００は、ユーザ操作に対応したリクエストにより、イベント制御機能プログラム（スクリプトデータ５９０）を実行する。それ以降の動作は、ユーザが統合画面に始めてアクセスした際と同様である。なお、この操作は通常複数回行なわれる。例えば、検索機能を持つ画面部品に対し、複数回検索を行なう場合である。
【０１１３】
以上のように、ブラウザ装置２００に画面を表示するための表示情報部分（レイアウト情報データ５２０）と、ユーザの画面操作に対し処理を行なうための動作情報部分（イベント情報データ５３０）と、これらの情報を組み合わせるための画面部品情報（構成情報データ５１０）とを持つ定義情報を用意することによって、ウェブサービスの表示及び操作画面として使用できる統合されたウェブ画面を、コーディングを行なうことなく、自動生成することができる。
また、ある画面部品からのリクエストで実行されたウェブサービスのレスポンスの戻り先を、別の画面部品にするよう定義情報を設定することで、動的なウェブサービスの連携が出来る。
【０１１４】
以上説明したウェブサービス統合装置によれば、画面表示用のソースコードを手で作成する必要なく、ウェブサービスをウェブ画面として表示させることができる。画面表示用のソースコードを手で作成する必要がないので、使用するウェブサービスを変更する際にもコーディングをし直す必要がなく、即時性を保つことができる。
【０１１５】
実施の形態２．
実施の形態２について、図２０〜図２１を用いて説明する。
なお、実施の形態１で説明した画面表示システム８００と共通する部分については、同一の符号を付し、説明を省略する。
【０１１６】
図２０は、この実施の形態における画面表示システム８００の全体構成の一例を示すシステム構成図である。
画面表示システム８００は、実施の形態１で説明した構成に加えて、更に、画面設計装置３００を有する。
画面設計装置３００は、表示画面４００を設計する利用者の操作にしたがって、構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を生成する。ウェブサーバ装置１００は、画面設計装置３００が生成した構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を記憶する。
また、画面設計装置３００は、表示画面４００を設計する利用者の操作にしたがって、ウェブサーバ装置１００が記憶した構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を読み出して、変更を加える。ウェブサーバ装置１００は、画面設計装置３００が変更した構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を記憶する。
【０１１７】
画面設計装置３００の外観及びハードウェア構成は、ウェブサーバ装置１００などと同様である。なお、画面設計装置３００は、ウェブサーバ装置１００と物理的に同一の装置であってもよい。
【０１１８】
図２１は、この実施の形態における画面設計装置３００の機能ブロックの構成の一例を示すブロック構成図である。
画面設計装置３００は、構成情報取得部３１１、レイアウト情報取得部３１２、イベント情報取得部３１３、構成情報記憶部３２１、レイアウト情報記憶部３２２、イベント情報記憶部３２３、構成情報雛形記憶部３３１、レイアウト情報雛形記憶部３３２、イベント情報雛形記憶部３３３、構成情報選択肢判定部３４１、レイアウト情報選択肢記憶部３４２、イベント情報選択肢記憶部３４３、構成情報編集部３５１、レイアウト情報編集部３５２、イベント情報編集部３５３、構成情報通知部３６１、レイアウト情報通知部３６２、イベント情報通知部３６３を有する。
【０１１９】
構成情報取得部３１１は、ＣＰＵ９１１を用いて、ウェブサーバ装置１００の構成情報記憶部１１１が記憶した構成情報データ５１０を取得する。
レイアウト情報取得部３１２は、ＣＰＵ９１１を用いて、ウェブサーバ装置１００のレイアウト情報記憶部１１２が記憶したレイアウト情報データ５２０を取得する。
イベント情報取得部３１３は、ＣＰＵ９１１を用いて、ウェブサーバ装置１００のイベント情報記憶部１１３が記憶したイベント情報データ５３０を取得する。
【０１２０】
構成情報記憶部３２１は、磁気ディスク装置９２０を用いて、構成情報取得部３１１が取得した構成情報データ５１０を記憶する。
レイアウト情報記憶部３２２は、磁気ディスク装置９２０を用いて、レイアウト情報取得部３１２が取得したレイアウト情報データ５２０を記憶する。
イベント情報記憶部３２３は、磁気ディスク装置９２０を用いて、イベント情報取得部３１３が取得したイベント情報データ５３０を記憶する。
【０１２１】
構成情報雛形記憶部３３１は、磁気ディスク装置９２０を用いて、あらかじめ、構成情報データの雛形となるデータ（以下「構成情報雛形データ」と呼ぶ。）を記憶している。構成情報雛形データは、例えば、構成情報データ５１０のうち、名称５１２、レイアウト５１３、コントロール５１４、リソース５１５など変更が可能な部分を空欄にしたものである。
レイアウト情報雛形記憶部３３２は、磁気ディスク装置９２０を用いて、あらかじめ、レイアウト情報データの雛形となるデータ（以下「レイアウト情報雛形データ」と呼ぶ。）を記憶している。レイアウト情報雛形データは、例えば、レイアウト情報データ５２０のうち、名称５２２、上位置５２３、左位置５２４、幅５２５、高さ５２６、スタイル５２７など変更が可能な部分を空欄にしたものである。
イベント情報雛形記憶部３３３は、磁気ディスク装置９２０を用いて、あらかじめ、イベント情報データの雛形となるデータ（以下「イベント情報雛形データ」と呼ぶ。）を記憶している。イベント情報雛形データは、例えば、イベント情報データ５３０のうち、イベント内容５４２、イベント対象５４３、送信方式種別５５２、要求先種別５５３、要求先データ５５４、パラメータ種別５５５、処理種別５５７、処理対象部品５５８など変更が可能な部分を空欄にしたものである。
【０１２２】
構成情報選択肢判定部３４１は、ＣＰＵ９１１を用いて、レイアウト情報記憶部３２２が記憶したレイアウト情報データ５２０や、イベント情報記憶部３２３が記憶したイベント情報データ５３０に基づいて、構成情報雛形記憶部３３１が記憶した構成情報雛形データの空欄に入れることができるデータの選択肢（以下「構成情報空欄選択肢」と呼ぶ。）を判定する。例えば、構成情報選択肢判定部３４１は、ＣＰＵ９１１を用いて、レイアウト情報記憶部３２２が記憶したレイアウト情報データ５２０から、レイアウト定義データ５２１の名称５２２を抽出して、構成情報データ５１０のレイアウト５１３に相当する部分の空欄に入れることができる構成情報空欄選択肢とする。
レイアウト情報選択肢記憶部３４２は、磁気ディスク装置９２０を用いて、あらかじめ、レイアウト情報雛形記憶部３３２が記憶したレイアウト情報雛形データの空欄に入れることができるデータの選択肢（以下「レイアウト情報空欄選択肢」と呼ぶ。）を記憶している。なお、レイアウト情報選択肢記憶部３４２に代えて、レイアウト情報選択肢判定部を設け、レイアウト情報選択肢判定部が、レイアウト情報空欄選択肢を判定する構成としてもよい。
イベント情報選択肢記憶部３４３は、磁気ディスク装置９２０を用いて、あらかじめ、イベント情報雛形記憶部３３３が記憶したイベント情報雛形データの空欄に入れることができるデータの選択肢（以下「イベント情報空欄選択肢」と呼ぶ。）を記憶している。なお、イベント情報選択肢記憶部３４３に代えて、イベント情報選択肢判定部を設け、イベント情報選択肢判定部が、イベント情報空欄選択肢を判定する構成としてもよい。
【０１２３】
構成情報編集部３５１は、表示装置９０１を用いて、構成情報記憶部３２１が記憶した構成情報データ５１０を表示し、操作入力装置を用いて、利用者の操作を入力し、ＣＰＵ９１１を用いて、入力した利用者の操作にしたがって、構成情報記憶部３２１が記憶した構成情報データ５１０を編集する。このとき、構成情報編集部３５１は、ＣＰＵ９１１を用いて、構成情報雛形記憶部３３１が記憶した構成情報雛形データや、構成情報選択肢判定部３４１が判定した構成情報空欄選択肢に基づいて、利用者の操作を補助する。例えば、利用者がボタンを一つ押すだけで、構成情報編集部３５１は、ＣＰＵ９１１を用いて、構成情報雛形記憶部３３１が記憶した構成情報雛形データを複製して、構成情報データ５１０の指定された位置に挿入する。あるいは、利用者が構成情報雛形データの複製の空欄の位置にマウスカーソルを合わせると、構成情報編集部３５１は、表示装置９０１を用いて、その空欄に入れることができると構成情報選択肢判定部３４１が判定した構成情報空欄選択肢を表示し、利用者が構成情報空欄選択肢のなかから、その空欄に入れるデータを選択できるようにする。
レイアウト情報編集部３５２は、表示装置９０１を用いて、レイアウト情報記憶部３２２が記憶したレイアウト情報データ５２０を表示し、操作入力装置を用いて、利用者の操作を入力し、ＣＰＵ９１１を用いて、入力した利用者の操作にしたがって、レイアウト情報記憶部３２２が記憶したレイアウト情報データ５２０を編集する。このとき、レイアウト情報編集部３５２は、ＣＰＵ９１１を用いて、レイアウト情報雛形記憶部３３２が記憶したレイアウト情報雛形データや、レイアウト情報選択肢記憶部３４２が記憶したレイアウト情報空欄選択肢に基づいて、利用者の操作を補助する。
イベント情報編集部３５３は、表示装置９０１を用いて、イベント情報記憶部３２３が記憶したイベント情報データ５３０を表示し、操作入力装置を用いて、利用者の操作を入力し、ＣＰＵ９１１を用いて、入力した利用者の操作にしたがって、イベント情報記憶部３２３が記憶したイベント情報データ５３０を編集する。このとき、イベント情報編集部３５３は、ＣＰＵ９１１を用いて、イベント情報雛形記憶部３３３が記憶したイベント情報雛形データや、イベント情報選択肢記憶部３４３が記憶したイベント情報空欄選択肢に基づいて、利用者の操作を補助する。
【０１２４】
構成情報通知部３６１は、ＣＰＵ９１１を用いて、構成情報記憶部３２１が記憶した構成情報データ５１０を、ウェブサーバ装置１００に対して通知し、ウェブサーバ装置１００の構成情報記憶部１１１に記憶させる。
レイアウト情報通知部３６２は、ＣＰＵ９１１を用いて、レイアウト情報記憶部３２２が記憶したレイアウト情報データ５２０を、ウェブサーバ装置１００に対して通知し、ウェブサーバ装置１００のレイアウト情報記憶部１１２に記憶させる。
イベント情報通知部３６３は、ＣＰＵ９１１を用いて、イベント情報記憶部３２３が記憶したイベント情報データ５３０を、ウェブサーバ装置１００に対して通知し、ウェブサーバ装置１００のイベント情報記憶部１１３に記憶させる。
【０１２５】
なお、この例では、ウェブサーバ装置１００が記憶した構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を読み出して、編集したのちに書き込む構成としているが、ウェブサーバ装置１００が記憶した構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を直接編集する構成であってもよい。
【０１２６】
構成情報編集部３５１、レイアウト情報編集部３５２、イベント情報編集部３５３が、構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０を表示する方式は、例えば、テキストとしてそのまま表示する方式であってもよいし、階層構造などデータ構造が理解しやすいような図を用いて表示する方式であってもよい。あるいは、どのような表示画面４００が出来るのか利用者が理解しやすいよう、結果として生成される表示画面４００を表示する方式であってもよい。
【０１２７】
この実施の形態における画面表示システム８００は、上記画面表示プログラム生成装置（コード生成部１１０）と、画面設計装置３００とを有する。
上記画面設計装置３００は、利用者の操作にしたがって、上記レイアウト情報データ５２０と上記イベント情報データ５３０とを生成する。
上記レイアウト情報記憶部１１２は、上記記憶装置（磁気ディスク装置９２０）を用いて、上記画面設計装置３００が生成したレイアウト情報データ５２０を記憶する。
上記イベント情報記憶部１１３は、上記記憶装置を用いて、上記画面設計装置３００が生成したイベント情報データ５３０を記憶する。
【０１２８】
この実施の形態における画面表示システム８００によれば、画面設計装置３００がレイアウト情報データ５２０やイベント情報データ５３０を生成するので、表示画面４００を設計する利用者の負荷を減らすことができる。
【０１２９】
以上説明したウェブサービス統合装置は、ユーザがグラフィカルに前記統合画面定義情報（構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０）を設計出来るインターフェースを持ち、前記統合画面定義情報の自動生成を行なう統合画面設計部（画面設計装置３００）を備える。
【０１３０】
統合画面設計部（画面設計装置３００）は、ユーザが統合画面定義情報をグラフィカルに設計出来るユーザインターフェースを持ち、設計した統合画面定義情報を自動生成する。
例えば、統合画面定義情報におけるデータ記述ルールをテンプレート化しておき、使用するウェブサービスやレイアウトの数値など必要な要素のみをエディタを用いて入力する。これにより、統合画面定義情報の作成を自動化できる。統合画面定義情報をＸＭＬ形式で記述する場合、統合画面定義情報のＸＭＬ要素をツリー状に表示し、ツリーのノードに子ノードや属性を追加・削除・変更する形で設定情報を作成できるようにすれば、テンプレート内の必要な要素のみを変更することができる。
また、エディタに検証機能を設ける構成としてもよい。これにより、タイプミスや指定できない種類の要素を自動で検出することが可能となる。
【０１３１】
統合画面設計部を備えることにより、統合画面定義情報のソースコード（構成情報データ５１０、レイアウト情報データ５２０、イベント情報データ５３０）を全て書く必要がなく、要素だけを指定して値を入力するだけで、統合画面定義情報を生成できる。
【０１３２】
以上のように、グラフィカルに設計出来るユーザインターフェースで定義情報の要素のみを入力することにより、定義情報全てを直接書く場合と比べコーディングの量が減るため、生産性が向上する。また、検証機能を持つエディタを使用することにより、タイプミスの混入を予防でき、指定できない種類の子ノードや属性を誤って追加することを防ぐことができる。
【符号の説明】
【０１３３】
１００  ウェブサーバ装置、１１０  コード生成部、１１１  構成情報記憶部、１１２  レイアウト情報記憶部、１１３  イベント情報記憶部、１１４  スタイルシート雛形記憶部、１１５  スクリプト雛形記憶部、１１７  本体雛形記憶部、１１８  ＨＴＭＬ雛形記憶部、１２１  スタイルシート生成部、１２２  スクリプト生成部、１２４  本体生成部、１２５  ＨＴＭＬ生成部、１４０  要求転送部、１４２  部品提供元判定部、１４３  ウェブサービス呼出部、１４４  結果取得部、１４５  画面部品生成部、１８０  送受信部、１８１  ＨＴＭＬ要求受信部、１８２  ＨＴＭＬ送信部、１８３  部品要求受信部、１８４  画面部品送信部、２００  ブラウザ装置、２１１  ＨＴＭＬ受信部、２１２  スクリプト取得部、２１３  スタイルシート取得部、２１４  本体取得部、２１５  初期画面構成部、２１６  画面構成記憶部、２１７  表示画面生成部、２１８  画面表示部、２２１  操作入力部、２２２  イベント判定部、２２３  ＨＴＭＬ要求生成部、２２４  ＨＴＭＬ要求送信部、２３０  スクリプト実行部、２３１  パラメータ設定部、２３２  部品要求生成部、２３３  部品要求送信部、２３４  画面部品受信部、２３５  画面構成更新部、３００  画面設計装置、３１１  構成情報取得部、３１２  レイアウト情報取得部、３１３  イベント情報取得部、３２１  構成情報記憶部、３２２  レイアウト情報記憶部、３２３  イベント情報記憶部、３３１  構成情報雛形記憶部、３３２  レイアウト情報雛形記憶部、３３３  イベント情報雛形記憶部、３４１  構成情報選択肢判定部、３４２  レイアウト情報選択肢記憶部、３４３  イベント情報選択肢記憶部、３５１  構成情報編集部、３５２  レイアウト情報編集部、３５３  イベント情報編集部、３６１  構成情報通知部、３６２  レイアウト情報通知部、３６３  イベント情報通知部、４００  表示画面、４１０  画面部品、４２１  テキストボックス、４２２  送信ボタン、４２３  リストボックス、５０１〜５０９  空欄、５１０  構成情報データ、５１１  画面部品定義データ、５１２  名称、５１３  レイアウト、５１４  コントロール、５１５  リソース、５２０  レイアウト情報データ、５２１  レイアウト定義データ、５２２  名称、５２３  上位置、５２４  左位置、５２５  幅、５２６  高さ、５２７  スタイル、５３０  イベント情報データ、５３１  コントロール定義データ、５３２  名称、５３３  イベント定義データ、５４０  条件指定データ、５４１  条件定義データ、５４２  イベント内容、５４３  イベント対象、５５０  動作指定データ、５５１  送信内容定義データ、５５２  送信方式種別、５５３  要求先種別、５５４  要求先データ、５５５  パラメータ種別、５５６  受信後処理定義データ、５５７  処理種別、５５８  処理対象部品、５６０  スタイルシート雛形データ、５６１  全体レイアウト雛形データ、５６２  個別レイアウト雛形データ、５７０  スタイルシートデータ、５７１  全体レイアウトデータ、５７２  個別レイアウトデータ、５８０  スクリプト雛形データ、５８１  初期処理雛形、５８２  イベント処理雛形、５８３  イベント設定工程雛形、５８４，５８７  画面部品要求送信工程雛形、５８５，５８８  画面部品受信工程雛形、５８６，５８９  画面部品表示工程雛形、５９０  スクリプトデータ、５９１  初期処理スクリプト、５９２  イベント処理スクリプト、６１０  本体雛形データ、６１１  個別本体雛形データ、６２０  本体データ、６３０  ＨＴＭＬ雛形データ、６４０  ＨＴＭＬデータ、６５０  画面部品データ、６６０  画面構成データ、８００  画面表示システム、８２０  ウェブサービス提供装置、９０１  表示装置、９０２  キーボード、９０３  マウス、９０４  ＦＤＤ、９０５  ＣＤＤ、９０６  プリンタ装置、９０７  スキャナ装置、９１０  システムユニット、９１１  ＣＰＵ、９１２  バス、９１３  ＲＯＭ、９１４  ＲＡＭ、９１５  通信装置、９２０  磁気ディスク装置、９２１  ＯＳ、９２２  ウィンドウシステム、９２３  プログラム群、９２４  ファイル群、９３１  電話器、９３２  ファクシミリ機、９４０  インターネット、９４１  ゲートウェイ、９４２  ＬＡＮ。
【図１】
2010211292.tif 000003
【図２】
2010211292.tif 000004
【図３】
2010211292.tif 000005
【図４】
2010211292.tif 000006
【図５】
2010211292.tif 000007
【図６】
2010211292.tif 000008
【図７】
2010211292.tif 000009
【図８】
2010211292.tif 000010
【図９】
2010211292.tif 000011
【図１０】
2010211292.tif 000012
【図１１】
2010211292.tif 000013
【図１２】
2010211292.tif 000014
【図１３】
2010211292.tif 000015
【図１４】
2010211292.tif 000016
【図１５】
2010211292.tif 000017
【図１６】
2010211292.tif 000018
【図１７】
2010211292.tif 000019
【図１８】
2010211292.tif 000020
【図１９】
2010211292.tif 000021
【図２０】
2010211292.tif 000022
【図２１】
2010211292.tif 000023