(57)【要約】【課題】ユーザが好みの入力フォームでウェブページへのデータ入力作業を行なう。【解決手段】ＣＰＵ11が実行するウェブブラウザが、ネットワークを介して接続したウェブページをビデオエンコーダ19を介して表示し、表示しウェブページの入力フォームを編集し、編集した入力フォームをテンプレートとして、テンプレートとウェブページとを対応付ける情報と共にＨＤＤ22に記憶し、ワイヤレスＬＡＮＩ／Ｆ20によりネットワークを介して接続したウェブページを上記記憶内容から検索し、該当ウェブページに対応するテンプレートを読出して入力フォームとして表示させる。【選択図】      図２
2008084015.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
ネットワークを介して接続したウェブページを表示する表示手段、
この表示手段で表示されたウェブページの入力フォームを編集する編集手段、
この編集手段で編集された入力フォームをテンプレートとして記憶するテンプレート記憶手段、
記憶したテンプレートとウェブページとを対応付ける情報を記憶するウェブページ記憶手段、及び
ネットワークを介して接続したウェブページを上記ウェブページ記憶手段から検索し、該当ウェブページに対応するテンプレートを上記テンプレート記憶手段から読出して入力フォームとして表示させる適用手段
として機能させることを特徴とするウェブページ閲覧プログラム。
【請求項２】
コンピュータを、
上記テンプレート記憶手段で記憶するテンプレート中にコメントを付加するコメント付加手段
としてさらに機能させることを特徴とする請求項１記載のウェブページ閲覧プログラム。
【請求項３】
コンピュータを、
上記テンプレート記憶手段で記憶するテンプレートをネットワークを介して外部に出力するテンプレート出力手段
としてさらに機能させることを特徴とする請求項１記載のウェブページ閲覧プログラム。
【請求項４】
コンピュータを、
ネットワークを介して外部からテンプレートを入力し、上記テンプレート記憶手段で記憶させるテンプレート入力手段
としてさらに機能させることを特徴とする請求項１記載のウェブページ閲覧プログラム。
【請求項５】
ネットワークを介して接続したウェブページを表示する表示手段と、
この表示手段で表示されたウェブページの入力フォームを編集する編集手段と、
この編集手段で編集された入力フォームをテンプレートとして記憶するテンプレート記憶手段と、
記憶したテンプレートとウェブページとを対応付ける情報を記憶するウェブページ記憶手段と、
ネットワークを介して接続したウェブページを上記ウェブページ記憶手段から検索し、該当ウェブページに対応するテンプレートを上記テンプレート記憶手段から読出して入力フォームとして表示させる適用手段と
を具備したことを特徴とする入力フォーム編集装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パーソナルコンピュータ（ＰＣ）を用いてインターネット経由で商品の購入等を行なうのに好適なウェブページ閲覧プログラム及び入力フォーム編集装置に関する。
【背景技術】
【０００２】
一般に、パーソナルコンピュータでインターネットを利用して公開されるウェブページの情報は、硬化すべきデータの所有者がウェブコンテンツの形で提供するもので、ネットユーザはその提供された形でしか情報を利用することができなかった。しかしながら、最近では、できあがったコンテンツではなく、データそのものを提供するＸＭＬ（ｅＸｔｅｎｓｉｂｌｅ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）ウェブサービスが普及してきている。このサービスでは、特定の検索エンジンのウェブサイトを利用し、自分のコンテンツ内にウェブ検索結果を好きなフォーマットで表示したり、特定のオンライン書店でウェブサービスを利用して自分のお勧め本棚を公開するネットユーザなどがおり、データ所有者以外が、自分の要望に合わせた形でデータを利用できるようになってきた。
【０００３】
またこれとは別に、ウェブページの入力フォームを作るための技術としては、クライアント端末に表示される入力フォームのテンプレートをウェブページを記述できる言語で作成し、当該言語によるソースコードをクライアント端末上から書き換えることで、入力フォームをカスタマイズするようにしたものが考えられている。（例えば、特許文献１）
【特許文献１】特開２００２−３２８９４１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記特許文献１に記載された技術は、例えば商品カタログをデスクトップパブリッシング（ＤＴＰ）等の技術を用いて製作する情報提供側の技術者用に開発された専用プログラムを用いるものであり、すでに構築されたウェブページの閲覧を行なうユーザ側でその入力フォーム等を変更することはできない。
【０００５】
また、上記ＸＭＬウェブサービスは、確かに個々のネットユーザがそれぞれに自分にとって便利な形で利用できるようにしたものである反面、それを実現するためにはＸＭＬでのプログラミングが必要であり、それなりの技術知識が必要となる。
【０００６】
加えて、データしかない状態から自分なりに便利に使えるレベルまでコンテンツを作り込むのは、知識の豊富な技術者でも複雑な手間を要し、負担が大きなものとなる。
【０００７】
そのように背景があるので、例えば既存のウェブページ上の登録フォームを、自分のためだけに多少レイアウトを変更する、などといったケースでは、たとえ専門知識のある人間でも対応しにくいのが実情であった。
【０００８】
本発明は上記のような実情に鑑みてなされたもので、その目的とするところは、ユーザの好みの入力フォームでデータ入力作業を行なうことが可能なウェブページ閲覧プログラム及び入力フォーム編集装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明は、コンピュータを、ネットワークを介して接続したウェブページを表示する表示手段、この表示手段で表示されたウェブページの入力フォームを編集する編集手段、編集された入力フォームをテンプレートとして記憶するテンプレート記憶手段、記憶したテンプレートとウェブページとを対応付ける情報を記憶するウェブページ記憶手段、及びネットワークを介して接続したウェブページを上記ウェブページ記憶手段から検索し、該当ウェブページに対応するテンプレートを上記テンプレート記憶手段から読出して入力フォームとして表示させる適用手段として機能させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ユーザが気軽に好みの入力フォームでデータ入力作業を行なうことが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下本発明をパーソナルコンピュータにインストールされたブラウザに適用した場合の実施の一形態について図面を参照して説明する。
【００１２】
図１は、システム全体の構成を示すものである。インターネットを含むネットワークＮを介して、ウェブページを提供するウェブサーバ（以下文中及び図面では単に「サーバ」と称する）Ｓと、個々のクライアント側のパーソナルコンピュータ（ＰＣ）１，１，‥‥とが接続される。
【００１３】
パーソナルコンピュータ１では、それぞれブラウザを予めインストールしておくことで、サーバＳの提供するウェブページを閲覧可能となる。
【００１４】
ネットワークＮは、インターネットのみならず、個々のパーソナルコンピュータ１，１，‥‥が接続するＬＡＮや契約プロバイダ等の構成を含むが、ここではその説明について省略する。
【００１５】
次に図２によりパーソナルコンピュータ１の構成について説明する。図２はこのパーソナルコンピュータ１のハードウェア構成を示すものであり、後述するブラウザを用いての動作処理を含む各種処理制御を司るＣＰＵ１１が、フロントサイドバスＦＳＢを介してノースブリッジ１２と接続される。
【００１６】
このノースブリッジ１２は、さらにメモリバスＭＢを介してメインメモリ１３と、またグラフィクスインタフェースＡＧＰを介してグラフィックコントローラ１４及びグラフィックメモリ１５と接続される他、サウスブリッジ１６とも接続され、主としてこれらの間での入出力制御を実行する。
【００１７】
サウスブリッジ１６は、ＰＣＩバス１７、キーボード／マウス１８、ビデオエンコーダ１９、ワイヤレスＬＡＮインタフェース２０、マルチディスクドライブ２１、ハードディスク装置（ＨＤＤ）２２と接続され、主としてこれら周辺回路とノースブリッジ１２との間の入出力制御を行なう。
【００１８】
なお、これらパーソナルコンピュータ１を構成する個々の要素は、きわめて一般的な技術であるのでその説明は省略するものとする。
【００１９】
なお、ビデオエンコーダ１９は、与えられたデジタル値の画像信号からアナログ値の画像信号であるＲＧＢビデオ信号を生成して出力し、ここでは図示しないカラーＴＦＴ（薄膜トランジスタ）液晶表示パネルで構成されるディスプレイ部を表示駆動する。
【００２０】
ハードディスク装置２２は、ＯＳ（オペレーティングシステム）や各種アプリケーションプログラム、データファイルと共に、上記ブラウザ（ウェブページ閲覧プログラム）を予めインストールして記憶している。
【００２１】
次に上記実施の形態の動作について説明する。  
まず、本実施の形態の機能が実現した場合の画面イメージを図３及び図４に示す。
【００２２】
図３は、社内用の物品購入ウェブシステムを例にとって示したものである。図３（Ａ）〜図３（Ｄ）は、社内システム運用部門が提供するオリジナルの画面「画面１」〜「画面３」「確認画面」である。こういった種類のシステムでは、少ない入力項目の画面が細切れの入力をさせら、経理等の専門部門でなければわかりづらい用語や分類基準が使われ、あるいは覚えづらいコード数値が必要となるなど、使いづらいことが多い。
【００２３】
図４（Ａ），図４（Ｂ）が、ユーザ１とユーザ２それぞれのテンプレート適用画面の例である。これらは、物品購入ウェブシステム用のカスタマイズテンプレートを作成したユーザ１，２が、それぞれ物品購入ウェブシステムにアクセスした際に、上記図３に示したオリジナルの画面が各ブラウザによって自動的にテンプレートを適用した結果、図４（Ａ），図４（Ｂ）の画面に差し替えられることとなる。
【００２４】
この差し替え動作は、あくまでパーソナルコンピュータ１のブラウザによって行なわれるものであり、提供側のサーバＳ内にある物品購入ウェブシステムプログラムは、図３（Ａ）〜図３（Ｄ）に示したオリジナルの画面のみを提供している。
【００２５】
図４（Ａ）に示すユーザ１のテンプレート適用画面では、  
・複数画面の入力項目を１つの画面に纏める。  
・項目の並び順をつける。  
・個人的な注釈を付ける。  
・部署コードにデフォルトで値が入るようにした。  
の計４点を主眼にカスタマイズを行なう場合を例示している。
【００２６】
図４（Ｂ）に示すユーザ２のテンプレート適用画面では、  
・複数画面の入力項目を１つの画面に纏める。  
・１回の処理で２種類の品物を処理できるようにした。
【００２７】
の計２点を主眼にカスタマイズを行なう場合を例示している。
【００２８】
このように、本実施の形態によれば、  
・複数画面の入力項目を１つの画面に纏める。  
（あるいは、１画面の入力項目を複数画面に分ける。）  
・入力項目の並び順を変える。  
・個人的な注釈を付ける。  
・特定の入力項目にデフォルト値が自動入力されるようにする。  
・１回の入力で複数会の処理ができるようにする。  
ことをユーザのカスタマイズ操作によりテンプレート化して自動的に実行できるようにしたものである。
【００２９】
本実施の形態の動作を説明する前に、着目するアイテムについて説明しておく。  
１．入力フォーム内のＨＴＭＬ（Ｈｙｐｅｒ  Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）の入力部品（テキストボックス、セレクトボックス、ラジオボタン、チェックボタン、ボタン等）  
２．サーバＳ側から送り込まれ、クライアント側のパーソナルコンピュータ１のウェブブラウザ上でＨＴＭＬを書き換えるプログラム（Ｊａｖａ（登録商標）・Ｓｃｒｉｐｔ（登録商標）、ＶＢＳｃｒｉｐｔ（Ｖｉｓｕａｌ  Ｂａｓｉｃ  Ｓｃｒｉｐｔｉｎｇ  ｅｄｉｔｉｏｎ）（登録商標））の、コンテンツ提供者が定義した関数  
３．登録結果確認画面等に表示される、１のアイテムの確認表示  
以上のものに着目し、アイテムとして抽出してそのＨＴＭＬソース、プログラムソースをクライアント側のパーソナルコンピュータ１内のデータベース（ハードディスク装置２２）にアイテム毎に登録するものとする。
【００３０】
以下、本実施の形態の動作について説明する。  
図５は、パーソナルコンピュータ１のユーザから見たテンプレートの登録／編集操作を示すものである。
【００３１】
まずユーザは、カスタマイズしたい所望のウェブページ、例えば上記図３（Ａ）にアクセスする（ステップＡ０１）。ここでユーザは、ブラウザのメニューバー等に配置された「記憶開始」ボタンを押下げ操作し、このページがテンプレートの最初のページであることを宣言する（ステップＡ０２）。
【００３２】
その後、ユーザはそのまま通常通りの同じデータの入力・登録作業を行なう（ステップＡ０３）。テンプレート化したい最後のページに到達したら、ユーザはブラウザのメニューバー等に配置された「記憶終了」ボタンを押下げ操作し、テンプレート作成のためのページの記憶を終了させる（ステップＡ０４）。
【００３３】
次にユーザが、ブラウザのメニューバー等に配置された「編集」ボタンを押下げ操作すると（ステップＡ０５）、ブラウザにより表示画面上にテンプレート編集画面が表示される。
【００３４】
編集画面では、ホームページビルダのソフトウェアの如く、ＨＴＭＬのソースではなく、ブラウザ描画結果を見ながらそのまま編集できるような、ＨＴＭＬ編集アプリケーションの画面と同様のイメージとなる。この画面上では、  
・入力部品のレイアウト変更（単なるページ内での並び替えに加え、異なるページ間での移動も可能）  
・表示文字列の編集、注釈としての新たな文字列の付加  
・入力部品に対するデフォルト値の設定  
・入力部品の複製（上記図４（Ｂ）の場合の如く１回の入力で複数回分の登録を行なう場合）  
この状態では、テンプレートは加工前の初期状態で、オリジナルのウェブ画面と同じもので、但しサーバＳではなくパーソナルコンピュータ１側に記録されたものが表示される。
【００３５】
ユーザはここで自分の好きなように画面のレイアウト等を編集し（ステップＡ０６）、編集作業を終えた時点でブラウザのメニューバー等に配置された「登録」ボタンを押下げ操作する（ステップＡ０７）。以上でテンプレートが作成され、次回以降、ユーザが同ウェブページにアクセスした場合には、サーバＳ側が提供するオリジナル画面ではなく、自動的にテンプレートが適用された、自分の好みが反応されたレイアウト等の画面が表示され、その画面上でデータの入力や登録作業を効率的に行なうことができるようになる。
【００３６】
例えば、注釈（コメント）としての新たな文字列の追加を行なっておくことで、入力ミスを行ない易い項目等に対してユーザ自身が行ないがちなミス入力の内容を事前に付記しておくなど、各ユーザ毎により効率的なウェブデータに対する作業環境を実現できる。
【００３７】
図６は、ブラウザ側から見たテンプレートの登録処理の内容を示すものである。  
この図６は、上記図５のステップＡ０２における「記録開始」ボタンの押下げ操作がトリガとなってスタートし、上記ステップＡ０３，Ａ０４での処理に該当する。
【００３８】
その当初も「記録開始」ボタンの押下げ操作に対して、まず新規のテンプレートを識別するためのユニークなテンプレートＩＤを生成する（ステップＢ０１）。
【００３９】
次に、現在表示しているウェブページのＨＴＭＬソースの他、そのソースから参照しているすべてのファイル、すなわちＪａｖａ  Ｓｃｒｉｐｔファイル（．ｊｓ）、ＶＢＳｃｒｉｐｔファイル（．ｖｂｓ）、画像ファイル（．ｇｉｆ，．ｐｎｇ，．ｊｐｇ等）、スタイルシートファイル（．ｃｓｓ等）をＰＣ１内にコピーし、ファイルに関する情報をテンプレートＩＤと共にオリジナル情報テーブルとテンプレートページ情報テーブルとに保存する（ステップＢ０２）。
【００４０】
オリジナル情報テーブルは、オリジナルのウェブページのデータを保持するテーブルであり、ＰＣ１内のハードディスク装置２２中、所定の記憶領域に作成されるデータベース上に存在する。
【００４１】
図９は、このオリジナル情報テーブルの内容を例示するものであり、  
・テンプレートＩＤ（テンプレート識別用ＩＤ）
・オリジナルページＩＤ（ファイル識別用ＩＤ。このテーブル内でユニークになるよう生成）  
・オリジナルページＵＲＬ（ファイルが元あったＵＲＬ）  
・オリジナルページ表示順序（テンプレート記憶開始から何ページ目か。画像等、ページのＨＴＭＬソースから参照されている画像やＪａｖａ  Ｓｃｒｉｐｔファイルの場合はｕｎｄｅｆ）  
・オリジナルデータ保存場所（このオリジナルページＩＤに対応するＨＴＭＬソース／ファイル保存場所）  
の各フィールドから構成される。
【００４２】
一方、テンプレートページ情報テーブルは、ユーザが加工するテンプレートのデータを保持するテーブルで、オリジナル情報テーブルと同じく、ＰＣ１内のハードディスク装置２２中、所定の記憶領域に作成されるデータベース上に存在する。
【００４３】
図１０は、このテンプレートページ情報テーブルの内容を例示するものであり、  
・テンプレートＩＤ（テンプレート識別用ＩＤ）
・テンプレートページＩＤ（テンプレートファイル識別用ＩＤ。このテーブル内でユニークになるよう生成）  
・テンプレートページ表示順序（テンプレート最初から何ページ目に表示するか。画像等、ページのＨＴＭＬソースから参照されている画像やＪａｖａ  Ｓｃｒｉｐｔファイルの場合はｕｎｄｅｆ）  
・テンプレートデータ保存場所（このテンプレートページＩＤに対応するＨＴＭＬソース／ファイル保存場所）  
の各フィールドから構成される。
【００４４】
この時点ではユーザによる加工を受けていないので、テンプレートデータの内容とテンプレートの表示順序は、オリジナルと全く同じものになる。
【００４５】
なお、ＨＴＭＬソースや各種ファイルの内容は、データファイルとして独立させるのではなく、データベースのテーブルのフィールド内に格納するものとしてもよい。
【００４６】
上記ステップＢ０２でのファイルの保存を終えると、今度は原画面内のテキストボックス、セレクトボックス、Ｊａｖａ  Ｓｃｒｉｐｔ関数等のアイテムを抽出し、アイテム情報テーブルに保存する（ステップＢ０３）。
【００４７】
なお、「原画面内」とは、サーバＳから送られてきたＨＴＭＬソースのみならず、ブラウザ上でＪａｖａ  Ｓｃｒｉｐｔ、ＶＢＳｃｒｉｐｔ等が実行された結果、動的に画面に追加されたアイテムを含む。
【００４８】
アイテム情報テーブルは、上述した２つのテーブルと同様に、ＰＣ１内のハードディスク装置２２中、所定の記憶領域に作成されるデータベース上に存在する。
【００４９】
図１１は、このアイテム情報テーブルの内容を例示するものであり、  
・テンプレートページＩＤ（アイテムが属するテンプレートファイルのテンプレートページＩＤ。）  
・テンプレートページアイテム名（テンプレート内でのアイテム識別用名称。このテンプレート内でユニークになるよう生成）  
・所属フォームアイテム名（このアイテムの所属するフォームアイテムがあれば、そのフォームのテンプレートページアイテム名）  
・オリジナルページＩＤ（アイテムが属するオリジナルファイルのオリジナルページＩＤ）  
・オリジナルページアイテム名（オリジナルページ内でのアイテム名。アイテムによっては空の場合もあり）  
・アイテムタイプ（テキストボックス、Ｊａｖａ  Ｓｃｒｉｐｔ関数な等、アイテムのタイプ）  
・デフォルト値（テンプレートで入力するアイテムのデフォルト値）  
・ソースコード（アイテムを記述するＨＴＭＬやＪａｖａ  Ｓｃｒｉｐｔ等のソースコード）  
の各フィールドから構成される。
【００５０】
なお補足説明であるが、ＨＴＭＬの入力フォームでは、サーバＳ側に送信するパラメータは、＜ＦＯＲＭ＞タグでグループ化されており、入力フォームを介してのデータ通信（Ｓｕｂｍｉｔ）では、パラメータは必ず何かの＜ＦＯＲＭ＞に属している。
【００５１】
そのため、Ｓｕｂｍｉｔボタンの押下げで＜ＦＯＲＭ＞〜＜／ＦＯＲＭ＞間に存在するすべての入力部品の入力値がサーバＳに送信され、同ページ内に他の＜ＦＯＲＭ＞がいくつあっても、それらの入力値は送信されない。
【００５２】
また、テンプレートアイテム名でユニークな名称を自動生成しているのは、入力フォームが複数ページにまたがる場合に、違うＦＯＲＭ／パラメータ／Ｊａｖａ  Ｓｃｒｉｐｔ関数に同一の名称を割り振っている可能性があり、それらを区別するためである。
【００５３】
また、上記図１１のアイテム情報テーブル内には、「ＣＨＥＣＫ」タイプのアイテムに「％％［テンプレートページアイテム名］％％」のような記法があるが、これは所謂確認画面で、サーバＳで登録された値を確認のために表示する部分を示す。このタイプのアイテムは、他のものと異なり、特定のタグ付けがなされていないが、画面内に送信済みの値と同じ表示文字列があるかどうかをブラウザがチェックすればよい。
【００５４】
複数種類のパラメータを同一入力値で送信しており、区別がつかない場合には、入力時に示されていた項目名（図３、図４の「品名」「数」等）が確認表示の近くにある可能性が高いので、どんな文字列が近くにあるか、また、その文字列があるか。またその文字列が前にあるか後ろにあるかで確認表示項目抽出の確度を上げることができる。
【００５５】
上記ステップＢ０３のアイテムの登録を終えると、ユーザの入力操作の間、Ｊａｖａ  Ｓｃｒｉｐｔ等のプログラムで動的に新規アイテムが追加されていないかどうかをモニタする（ステップＢ０４）。
【００５６】
ここで新規アイテムが追加されていると判断した場合には、新規アイテムをアイテム情報テーブルに追加した上で（ステップＢ０５）、再び新規アイテム追加のモニタ状態に戻る。
【００５７】
新規アイテムが追加されず、入力フォームが「Ｓｕｂｍｉｔ」されたり、リンクがクリックされるなどして次のウェブページが要求されると（ステップＢ０６）、これを判断してサーバＳにユーザ入力値を送信し、次のページのデータを所得して表示した上で（ステップＢ０７）、再び上記ステップＢ０２からの処理に戻る。
【００５８】
しかして、次のウェブページが要求されない場合、上記ステップＢ０６でこれを判断し、ユーザがテンプレートの「記録終了」ボタンを押下げ操作するのを待機し（ステップＢ０８）、操作された時点で、以上でこのテンプレート登録処理を終了する。
【００５９】
図７は、ブラウザ側から見たテンプレートの編集処理の内容を示すものである。  
この図７は、ユーザ側から見た上記図５のステップＡ０５における「編集」ボタンの押下げ操作がトリガとなってスタートし、上記ステップＡ０６，Ａ０７での処理に該当する。
【００６０】
その当初に「編集」ボタンの押下げ操作に対して、ユーザがＨＴＭＬページを編集するための編集画面を表示する（ステップＣ０１）。この編集画面は、一般的なホームページビルダのような機能を持つ画面であり、この編集画面表示後にブラウザはユーザが編集作業を終えて「登録」ボタンをお下げ操作するのを待機する（ステップＣ０２）。
【００６１】
しかして、「登録」ボタンが操作された場合、ステップＣ０２でこれを判断し、ユーザにより行われた編集結果のテンプレートが、テンプレート規則をしていないかどうかをチェックする（ステップＣ０３）。
【００６２】
ここでテンプレート規則は、このテンプレートによる登録処理を不可能にするユーザ表記がないかどうかをチェックするものであり、例えば以下のような規則が挙げられる。例えば、  
・送信値の確認表示が、その値の入力フォームと同じ、または表示順序が前の画面にある。（この場合、送っていないものはチェックできないため）  
・入力アイテムがあるのに、画面内に送信（Ｓｕｂｍｉｔ）ボタンがない。（この場合、入力値を送信するためのトリガが存在しないため）  
こうしてテンプレート規則違反があると判断した場合には、ユーザに対して違反内容に対応したアラートダイアログを出力した上で（ステップＣ０４）、再び上記ステップＣ０１からの処理に戻り、ユーザに違反箇所の修正を促す。
【００６３】
また、上記ステップＣ０３でテンプレート規則違反がないと判断した場合には、ユーザの編集内容に従って上記図１０で示したテンプレート情報テーブル、及びこのテンプレート情報テーブルが示すテンプレートデータ保存場所のファイル内容及び上記図１１で示したアイテム情報テーブルの内容を再構築し、旧内容に対して上書きによる更新設定を実行した上で（ステップＣ０５）、以上でこの図７の処理を終了する。
【００６４】
図１２〜図１４によりテンプレートの例を挙げて説明する。  
図１２は、サーバＳから提供されるオリジナルのウェブページ画面の一部（図１２（Ａ））（画面１のみ）とそのソース（図１２（Ｂ））を例示するものであり、図１３は、これに対応したテンプレートページ（図１３（Ａ））とそのソース（図１３（Ｂ））を示す。
【００６５】
図１２（Ａ）と図１３（Ａ）とを比べてわかるように、入力画面のレイアウトがユーザに合わせて編集され、且つユーザが付け加えて注釈も図１３（Ｂ）に示すようにＨＴＭＬソースに追加されている。
【００６６】
また、オリジナル画面側にあったフォームの入力部品名やＪａｖａ  Ｓｃｒｉｐｔの関数名が、編集後のテンプレートではテンプレートページ情報テーブルで生成されたユニークなアイテム名に置換されている。
【００６７】
例えば、オリジナルのソース７行目の  
「onChange="hinmei_check()"」  
は、品名の値がユーザにより変更された際に、Ｊａｖａ  Ｓｃｒｉｐｔ関数”ｈｉｎｍｅｉ＿ｃｈｅｃｋ”が発動するように定義する文字列である。
【００６８】
図１３（Ｂ）で示すようにこの関数はＪａｖａ  Ｓｃｒｉｐｔファイル（．ｊｓ）内で”ｉｔｅｍ１００＿５”と改名されており、ソース内でも対応する関数名の  
「onChange="item100_5()"」  
で品名が変更された際に発動するようになっている。
【００６９】
このように、入力値をチェックしたり、入力フォーム自体を操作するＪａｖａ  Ｓｃｒｉｐｔ関数の発動条件や機能は自動的に保存されており、容易にオリジナルページの製作者が意図した入力フォーム機能を維持することができる。
【００７０】
図１４（Ａ）−１はオリジナル画面、図１４（Ａ）−２はそのソース、図１４（Ｂ）−１は編集後のテンプレートページ画面、図１４（Ｂ）−２はそのソースである。  
オリジナル画面のソースでは入力値が表示されていた箇所が、編集後のテンプレート画面のソースでは「％％［アイテム名］％％」の入力値確認表示になっている。
【００７１】
このように、特定のウェブページに対してテンプレートを作成すれば、次回以降、同ページをユーザがアクセスした場合には、サーバＳが提供するオリジナルのページ画面ではなく、ユーザ自身が作成したテンプレートが適用された構成のウェブページが自動的にＰＣ１側で表示されることとなる。ユーザは、そこで、自分好みのレイアウトでオリジナルページが提供するのと同じデータの登録機能を利用することが可能となる。
【００７２】
次に図８により、ブラウザによってすでにテンプレートを作成した２回目以降のウェブページアクセス時に実行される、テンプレートの適用処理について説明する。  
図８は、ブラウザ側から見たテンプレートの適用処理の内容を示すもので、ユーザが任意のウェブページにアクセスすることをトリガとして起動される。
【００７３】
その当初に、初期設定としてテンプレートのページ数を表す変数ｔに「１」を、当該ウェブサイトにおけるウェブページ数を表す変数ｐに「２」をそれぞれ代入した上で（ステップＤ０１）、アクセスするウェブページに適用可能なテンプレートがすでに登録されているか否かを判断する（ステップＤ０２）。
【００７４】
これは、上記図９に示したオリジナル情報テーブルにアクセス対象のＵＲＬが存在するか否かで判断するもので、適用すべきテンプレートが存在しないと判断した場合には、通常通りサーバＳ側に対してウェブページの内容を要求し、オリジナルのウェブページが提供されるとそれを取得してそのまま表示し、以上でこの図８によるテンプレート適用に関する処理を終了する。
【００７５】
また、上記ステップＤ０２で該当するテンプレートが存在すると判断した場合には、次いで図１０のテンプレートページ情報テーブル、図１１のアイテム情報テーブルから必要なデータを取得し、変数ｔの内容「１」に従ってテンプレート１ページ目を表示する（ステップＳ０４）。
【００７６】
ここで、表示したページが関連する一連のテンプレートの中で最後に位置するものであるか否かをその時点での変数ｔにより判断し（ステップＤ０５）、そうであると判断した場合には以上でこの図８によるテンプレート適用に関する処理を終了する。
【００７７】
また、上記ステップＤ０４でテンプレート最後のページではないことを確認すると、ユーザが表示された入力フォームに必要な値を入力し、Ｓｕｂｍｉｔボタンを操作して次のページを要求するのを待機する（ステップＤ０６）。
【００７８】
しかして、次のページが要求された時点でこれをステップＤ０６で判断し、この時点でユーザが入力した値で、サーバＳに対して送信できるＦＯＲＭアイテムがあるかどうかを判断する（ステップＤ０７）。
【００７９】
これは、未送信のＦＯＲＭアイテムのうち、オリジナル画面で一番早く出現するＦＯＲＭアイテムを特定し、そのＦＯＲＭアイテムに対する入力値がすべて入力されているかどうかで判断できる。
【００８０】
入力データが出揃っておらず、サーバＳに対して送信できるＦＯＲＭアイテムがまだないと判断した場合には、テンプレートページの変数ｔを「＋１」更新設定した上で（ステップＤ０８）、再び上記ステップＤ０４からの処理に戻ることで、次のテンプレートページを表示させ、次のユーザのデータ入力を待機する。
【００８１】
しかして、ＦＯＲＭアイテムに対する入力値がすべて入力されると上記ステップＤ０７でこれを判断し、サーバＳへのデータ送信処理を行なう（ステップＤ０９）。  
この場合、まず、ＦＯＲＭアイテムに、データ送信時に起動されるＪａｖａ  Ｓｃｒｉｐｔ関数  
「<FORM onSubmit="[Java Script]">」  
で定義されるものがあればその関数を実行する。その後、そのＦＯＲＭに属するアイテムのデータを本来の名前でサーバＳに送信し、サーバＳが応答結果として返すページを取得する。サーバＳが返すページは、入力データがサーバＳ上の入力データチェックを通過し、正常に処理されたならば、ＰＣ１内に保存された次のオリジナルページと同じアイテムを持つはずである。
【００８２】
したがって、サーバＳが応答結果として返すオリジナルページとのアイテムが一致するか否かによりＦＯＲＭアイテムへのデータ入力が正しかったか否かを判断する（ステップＤ１０）。
【００８３】
ここで、データ入力が正しかったと判断した場合には、ステップＤ１０でこれを判断し、上記変数ｐを「＋１」更新設定した上で（ステップＤ１１）、再び上記ステップＤ０７からの処理に戻ることで、次に送信すべきＦＯＲＭアイテムを特定し、再び入力データフォームが揃うのを待機する。
【００８４】
こうした正常なテンプレートデータに基づくデータ入力作業は、上記ステップＤ０５でテンプレートページが最終となったと判断するまで繰返し実行する。
【００８５】
また、もし不正な入力データがあり、サーバＳ上でエラーが発生していた場合には、サーバＳから返されてくる次のウェブページはエラーページであり、予め登録していたオリジナルページのアイテムとは異なるものとなる。
【００８６】
したがって、そのような場合にはステップＤ１０でこれを判断し、「入力データ不正によるエラー」とみなす。具体的には、サーバＳから返されてきたエラーページを表示した上で（ステップＤ１２）、以上でこの図８によるテンプレート適用に関する処理を終了する。
【００８７】
ここでは、サーバＳから返されてきたエラーページをそのまま表示する他、ブラウザ側で何らかの規則で生成するものとしてもよい。もしサーバＳの側から提供されるページの入力仕様が変更され、サーバＳの求めるデータが返信できなかった場合には、ここでエラーとなり、ユーザはエラーページでテンプレート修正の必要があることを認識することができる。
【００８８】
このように、ＰＣ１側で実行するブラウザがユーザの入力をサーバＳの入力仕様に合わせたデータ種類と順序で送信することにより、サーバＳ側のプログラムを変更することなく、またサーバＳの不正入力チェックやデータ処理機能をそのまま活用して、ユーザの好みに応じたテンプレートを適用することができる。
【００８９】
次に、ユーザがテンプレートを再編集（修正）する場合の動作についても説明しておく。ユーザがテンプレートを修正したくなった場合、そのテンプレートが登録されたウェブページにアクセスし、テンプレートを適用させる。そこで、ブラウザのメニューバー等に配置された「返信」ボタンを押下げ操作することで、そのテンプレートに対する編集画面が起動され、上記図７で示した処理行程により再び必要なテンプレートを編集することができる。
【００９０】
また、あるユーザが作成したテンプレートは、ハードディスク装置２２の特定領域に保存する上記図９に示したオリジナルページ情報テーブル、図１０に示したテンプレートページ情報テーブル、及び図１１に示したアイテム情報テーブルの各テーブルと、クライアント側であるＰＣ１上に保存されたＨＴＭＬソース、画像等の各所ファイルさえコピーすれば、他のユーザも使えるようになる。したがって、これら配布をより簡便に実施するため、ブラウザにテンプレートのエクスポート／インポート機能をさらに付加することも考えられる。
【００９１】
この場合、テンプレートを作成した第１のユーザは、まずそのテンプレートが登録されたウェブページにアクセスし、テンプレートを適用させる。そこでブラウザのメニューバー等に配置された「エクスポート」ボタンを押下げ操作することで、ブラウザは図９に示したオリジナルページ情報テーブル、図１０に示したテンプレートページ情報テーブル、及び図１１に示したアイテム情報テーブルの各テーブルの該当するテンプレートのデータと、関連する各種ファイルのデータを１個のデータファイルに纏めて出力する。
【００９２】
上記第１のユーザは、そのファイルを記録媒体にコピーし、あるいは電子メールに添付することで、テンプレートを求める他のユーザにファイルを渡す。
【００９３】
テンプレートを求める第２以下ののユーザは、渡されたファイルを自己のＰＣ１で利用可能な環境を実現した上でブラウザを起動し、例えばメニューバー等に配置された「インポート」ボタンを押下げ操作し、受け取ったファイルを選択することで、ファイル内のデータを展開し、各テーブルへのデータ挿入、ファイルのコピーを行ない、ユーザ１と同じテンプレートの利用環境を実現できる。
【００９４】
このようにしてテンプレートを配布するものとすれば、似通った作業を行ない、似通ったカスタマイズフォームを求めるユーザが複数存在する場合であっても、テンプレートを誰かが代表して作成すれば、それらユーザ全員で作成したテンプレートを共有して利用することができる。
【００９５】
以上本実施の形態によれば、一度ユーザに通常のデータ登録処理を実際に行なってもらい、どのウェブページにどんな入力部品があるのかを抽出し、アイテム化している。どのウェブページにどのような入力部品があるのかは、ユーザが使用するＰＣ１のデータベース（ハードディスク装置２２）に保存される。ユーザが入力フォームのレイアウトを変更しても、データ送信時にはサーバＳの入力仕様に合わせた順序と種類のデータを送ることが可能となる。そのため、サーバＳ側のプログラムを変更することなく、またサーバＳ側の不正入力チェックやデータ処理機能をそのまま活用して、ユーザの好みに応じたテンプレートを適用することができる。
【００９６】
また、上記実施の形態では、入力部品のデフォルト値をユーザが編集画面で手動設定するものとして説明したが、同一ユーザの過去の入力履歴から自動設定する機能を付加するものとしてもよい。
【００９７】
すなわち、ユーザがテンプレートを使用するサービスに、入力したデータ値のログをとり、それからデフォルト値を決定する。そのようにした場合、ユーザは編集画面で、入力アイテムに対し、以下のようなオプションを選択することができるものとする。  
・前回入力した値を自動入力する  
・いままでに入力した値の中で一番使用頻度の高い値を自動入力する  
こうしてテンプレートを適用する場合に、上記のオプション設定に従い入力アイテムに値を自動入力することで、ユーザの手間をさらに簡略化することができる。
【００９８】
さらに、上記実施の形態では、テンプレートを外部に配布する際に、当該テンプレートファイルを電子メール添付で送信するものと説明したが、本発明はこれに限らず、テープ配布用の専用サーバを設けて当該サーバに蓄積させるものとしてもよい。
【００９９】
すなわち、テンプレート作成者がブラウザ上でテンプレートの「配布」を選択することで、ブラウザがテンプレートをファイルにエクスポートし、専用のテンプレート配布サーバへアップロードする。
【０１００】
この場合、ブラウザは、ユーザが任意のウェブサイトにアクセスする毎にテンプレート配布サーバにテンプレートの有無の問合せを行ない、該当するテンプレートが登録されていれば、ブラウザ上でテンプレートリストが表示され、ユーザは所望のテンプレートを選択し、ダウンロードできるようになる。
【０１０１】
テンプレート配布サーバでは、１つのウェブサイトに対するテンプレート数が多くなると、ユーザが選択しづらくなるので、例えば以下のような基準でお勧めのテンプレートを抽出し、ユーザへの推薦を行なう。すなわち、  
・ダウンロード数の多いテンプレート  
・ブラウザ上でユーザが自分の属性（会社であれば部署、職種等）を登録できるようにしておき、属性の近い人のテンプレート  
特に、上記ユーザの属性に合わせたテンプレートの推薦を行なうものとした場合、当該ユーザのテンプレート配布サーバへの初回アクセス時に、属性としてウェブページへのアクセス度合い（例えばビギナーかヘビーユーザかなど）、性別、年齢、テンプレート形式の好み、等を予め登録しておくことで、２回目以降からは属性の登録を省略して即時適していると思われるテンプレートのリストが推薦されることとなり、より効率的にテンプレートを選択することができる。
【０１０２】
また、上述した各実施の形態は、いずれもテンプレート機能を実現するためのデータベースやファイル等を含む全データを持ち、テンプレートを適用するのをクライアントＰＣ１側がブラウザを用いて行なうものとして説明したが、その機能を実現するのはサーバＳ側であってもよい。これにより、ＰＣ１側のブラウザではテンプレート適用のための特定のの追加機能は必要なくなり、ブラウザの種類を問わずテンプレートを使用することができるようになる。
【０１０３】
ユーザは、テンプレート機能を持つサーバＳを介して任意のウェブページにアクセスすることができ、その際にサーバＳはそのウェブページにユーザのテンプレートが登録されているか否かを判別し、登録されていればテンプレート適用処理をその画面をクライアントＰＣ１に送り込む。その場合、既存の入力フォーム仕様に合わせたデータ送信も、テンプレート適用サーバＳが行なう。
【０１０４】
このようにすることで、ユーザはＰＣ１を変えても自分のテンプレートを利用できるようになる。
【０１０５】
さらに、テンプレートに関する全データ及び機能をサーバＳで集約することができるので、ユーザの行動や好みの把握がし易くなる。例えば、お勧めテンプレート推薦機能では、  
・テンプレートを登録しているウェブページの傾向が似たユーザのテンプレートを勧める  
・各ユーザの入力値をログにとり、同じサイトに対して似たようなデータを登録しているユーザのテンプレートを勧める  
といった機能も実現できるようになる。
【０１０６】
さらにこのサーバＳ側がテンプレートの適用を行なう方式では、ウェブページの提供者が、自分のウェブページに対してテンプレートを作成し、自ページへのアクセスを自動的にテンプレート適用サーバＳに振り換えるようにすれば、全ユーザにテンプレート適用画面を見せられるようになり、自ページの複雑なプログラム変更を行なうことなく、画面のレイアウトを変えることができるようになる。
【０１０７】
また、クライアントＰＣ１が属するＬＡＮの管理者が、プロキシサーバ等のＬＡＮの出入り口で特定のウェブページへのアクセスをテンプレート適用サーバＳへ振り変えるようにすれば、ＬＡＮ内の全ユーザへテンプレート適用画面を見せることができるようになる。これは、例えば社外の掲示板の閲覧は許可するが、書込みテンプレート上で書込みフォームを使用不可にして許可しないなど、社内ＬＡＮの運用ポリシーを徹底したい場合等に効果的に利用できる。
【０１０８】
その他、本発明は上述した実施の形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、上述した実施の形態で実行される機能は可能な限り適宜組合わせて実施しても良い。上述した実施の形態には種々の段階が含まれており、開示される複数の構成要件により適宜の組合せにより種々の発明が抽出され得る。例えば、実施の形態に示される全構成要件からいくつかの構成要件が削除されても、効果が得られるのであれば、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【０１０９】
【図１】本発明の実施の一形態に係るシステム全体の構成を示す図。
【図２】同実施の形態に係るクライアントＰＣの機能回路構成を示すブロック図。
【図３】同実施の形態に係る機能実現時の画面イメージを示す図。
【図４】同実施の形態に係る機能実現時の画面イメージを示す図。
【図５】同実施の形態に係るユーザから見たテンプレート登録／編集の操作の処理内容を示すフローチャート。
【図６】同実施の形態に係るブラウザから見たテンプレート登録時の処理内容を示すフローチャート。
【図７】同実施の形態に係るブラウザから見たテンプレート編集時の処理内容を示すフローチャート。
【図８】同実施の形態に係るブラウザから見た処理内容を示すフローチャート。
【図９】同実施の形態に係るオリジナル情報テーブルの内容を例示する図。
【図１０】同実施の形態に係るテンプレートページ情報テーブルの内容を例示する図。
【図１１】同実施の形態に係るアイテム情報テーブルの内容を例示する図。
【図１２】同実施の形態に係るウェブサーバ側から提供されるオリジナルのウェブページ画面とそのソースコードとを例示する図。
【図１３】同実施の形態に係る図１２に対応したブラウザ側でテンプレートを編集したウェブページ画面とそのソースコードとを例示する図。
【図１４】同実施の形態に係るウェブサーバ側から提供されるオリジナルのウェブページ画面とそのソースコード、ブラウザ側でテンプレートを編集したウェブページ画面とそのソースコードとを例示する図。
【符号の説明】
【０１１０】
１…パーソナルコンピュータ、１１…ＣＰＵ、１２…ノースブリッジ、１３…メインメモリ、１４…グラフィックコントローラ、１５…グラフィックメモリ、１６…サウスブリッジ、１７…ＰＣＩバス、１８…キーボード／マウス、１９…ビデオエンコーダ、２０…ワイヤレスＬＡＮインタフェース（Ｉ／Ｆ）、２１…マルチディスクドライブ、２２…ハードディスク装置（ＨＤＤ）、ＡＧＰ…グラフィクスインタフェース、ＦＳＢ…フロントサイドバス、ＭＢ…メモリバス、Ｎ…ネットワーク、Ｓ…サーバ。
【図１】
2008084015.tif 000003
【図２】
2008084015.tif 000004
【図３】
2008084015.tif 000005
【図４】
2008084015.tif 000006
【図５】
2008084015.tif 000007
【図６】
2008084015.tif 000008
【図７】
2008084015.tif 000009
【図８】
2008084015.tif 000010
【図９】
2008084015.tif 000011
【図１０】
2008084015.tif 000012
【図１１】
2008084015.tif 000013
【図１２】
2008084015.tif 000014
【図１３】
2008084015.tif 000015
【図１４】
2008084015.tif 000016