(57)【要約】【課題】  ウェブブラウザ・アプリケーション・プログラムのコンテキストにおいてスプレッドシートを表示し、変更することが可能にする。【解決手段】  ウェブブラウザ・アプリケーション・プログラムにおいてスプレッドシートドキュメントを表示するために要求を受け取る。その要求に応答して、ウェブブラウザ・アプリケーション・プログラムにより描画可能なスプレッドシートドキュメントの表示が生成される。次に、そのスプレッドシートドキュメントの表示が、ウェブブラウザ・アプリケーション・プログラムに伝達される。次に、ウェブブラウザ・アプリケーション・プログラムが、そのスプレッドシートドキュメントの表示を描画することにより、スプレッドシートドキュメントの表示可能バージョンを提供する。スプレッドシートドキュメントの表示と共にスクリプトが含まれており、ウェブブラウザ中からのスプレッドシートとの対話性が可能になる。【選択図】  図２
2005353058.tif 000002
【特許請求の範囲】
【請求項１】
ウェブブラウザアプリケーションプログラムのコンテキスト中からスプレッドシートを表示して対話するための方法であって、
前記ウェブブラウザアプリケーションプログラムにおけるスプレッドシートドキュメントを開く要求を受け取るステップと、
前記要求に応答して、前記ウェブブラウザアプリケーションプログラムにより描画可能な前記スプレッドシートドキュメントの表示を生成するステップと、
前記スプレッドシートドキュメントの前記表示を前記ウェブブラウザアプリケーションプログラムに伝達するステップと、
前記ウェブブラウザにおける前記スプレッドシートドキュメントの前記表示を描画することにより、前記スプレッドシートドキュメントの表示可能バージョンを提供するステップと、
を具備したことを特徴とする方法。
【請求項２】
前記スプレッドシートドキュメントの前記表示は、前記スプレッドシートドキュメントの前記表示を描画する際に使用するためのマークアップ言語タグ、および、前記スプレッドシートの前記表示可能バージョンとの対話性を提供するために前記ウェブブラウザのコンテキスト中において実行可能なスクリプトのみを備えること、を特徴とする請求項１に記載の方法。
【請求項３】
前記スプレッドシートの前記表示可能バージョンは、前記スプレッドシートドキュメントを表示するために利用される場合、スプレッドシートアプリケーションプログラムにより提供された可視表示と実質的に同様に見える、ことを特徴とする請求項２に記載の方法。
【請求項４】
前記ウェブブラウザ中で描画された前記スプレッドシートの形態を変更するためのユーザ要求を受け取るステップと、
前記要求に応答して、前記要求された変更を実行するために前記スクリプトの１つを実行するステップと
をさらに備える、ことを特徴とする請求項３に記載の方法。
【請求項５】
前記要求された変更を実行するために前記スクリプトの１つを実行するステップは、前記要求された変更を識別するデータをサーバコンピュータに伝達するステップを含み、
前記方法は、さらに加えて、
前記要求された変更を識別する前記データを受け取るステップと、
前記データを受け取るステップに応答して、前記要求された変更を反映している、再計算されたスプレッドシートドキュメントを生成するステップと、
前記ウェブブラウザアプリケーションプログラムにより描画可能な前記再計算されたスプレッドシートドキュメントの表示を生成するステップと、
前記再計算されたスプレッドシートドキュメントの前記表示を前記ウェブブラウザアプリケーションプログラムに伝達するステップと
を備える、ことを特徴とする請求項４に記載の方法。
【請求項６】
前記ウェブブラウザアプリケーションプログラムにより描画可能な前記再計算されたスプレッドシートドキュメントの表示を生成するステップは、
前記スプレッドシートドキュメントを検索するステップと、
前記スプレッドシートドキュメントを、拡張可能マークアップ言語スプレッドシートフォーマットを使用して表現されたドキュメントに変換するステップと、
前記拡張可能マークアップ言語スプレッドシートフォーマットを使用して表現された前記ドキュメントを、ハイパーテキストマークアップ言語を使用して表現され、かつ前記ウェブブラウザアプリケーションにより描画可能なマークアップ言語タグおよびスクリプトを含んだ前記スプレッドシートドキュメントの表示に変換するステップと
を含む、ことを特徴とする請求項５に記載の方法。
【請求項７】
請求項１に記載の方法をコンピュータ実行可能命令として記憶したことを特徴とするコンピュータ可読媒体。
【請求項８】
請求項１に記載の方法を実行可能とした、ことを特徴とするコンピュータ制御された装置。
【請求項９】
ウェブブラウザアプリケーションプログラム中からスプレッドシートを表示して対話するための方法であって、
１つまたは複数のスプレッドシートを含んだワークブックに対する要求として、前記ウェブブラウザアプリケーションプログラム中から生成されている要求を受け取るステップと、
前記要求に応答して、前記要求されたワークブックを検索し、前記要求されたワークブックを計算し、該計算されたワークブックを拡張可能マークアップ言語スプレッドシートフォーマットに変換するステップと、
前記計算されたワークブックを拡張可能マークアップ言語スプレッドシートフォーマットから描画可能ドキュメントに変換するステップとして、該描画可能ドキュメントが、前記ウェブブラウザアプリケーションにより描画可能なハイパーテキストマークアップ言語タグおよびスクリプトを備えるようにした変換ステップと、
前記描画可能ドキュメントを提供することにより、前記ワークブックに対する要求に応答するステップと、
を具備したことを特徴とする方法。
【請求項１０】
前記描画可能ドキュメントは、前記スプレッドシートドキュメントの表示を描画する際に使用するためのマークアップ言語タグ、および、前記スプレッドシートの表示可能バージョンとの対話性を提供するために前記ウェブブラウザのコンテキスト中において実行可能なスクリプトのみを備える、ことを特徴とする請求項９に記載の方法。
【請求項１１】
前記描画可能ドキュメントは、前記要求されたワークブックを表示するために利用された場合、スプレッドシートアプリケーションプログラムにより提供される可視表示と実質的に同様に見える、ことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記ワークブックを変更する要求を受け取るステップとして、該要求は、前記ワークブックに対して為される変更を識別するデータを含む、ステップと、
前記要求に応答して、前記要求された変更を反映する再計算されたワークブックを生成するステップと、
前記再計算されたワークブックに対して描画可能ドキュメントを生成するステップであって、該描画可能ドキュメントは、前記ウェブブラウザアプリケーションプログラムにより描画可能である、ステップと、
前記再計算されたワークブックに対する前記描画可能ドキュメントを前記ウェブブラウザアプリケーションプログラムに伝達するステップと
をさらに備える、ことを特徴とする請求項１１に記載の方法。
【請求項１３】
請求項９に記載の方法をコンピュータ実行可能命令として記憶したことを特徴とするコンピュータ可読媒体。
【請求項１４】
請求項９に記載の方法を実行可能とした、ことを特徴とするコンピュータ制御された装置。
【請求項１５】
第１のサーバコンピュータと第２のサーバコンピュータとを備え、ウェブブラウザアプリケーションプログラムのコンテキスト中からスプレッドシートを表示し変更することを可能としたシステムであって、
前記第１のサーバコンピュータは、スプレッドシートの描画可能バージョンに対する要求をウェブブラウザアプリケーションプログラムから受け取り、拡張可能マークアップ言語スプレッドシート（ＸＭＬＳＳ）フォーマットを使用して表現された前記スプレッドシートのバージョンを前記第２のサーバコンピュータから要求し、前記第２サーバコンピュータから前記スプレッドシートのＸＭＬＳＳバージョンを受け取り、前記スプレッドシートの前記ＸＭＬＳＳバージョンを前記スプレッドシートの描画可能バージョンに変換し、前記スプレッドシートの前記描画可能バージョンを用いて前記ウェブブラウザからの前記要求に応答するために、プログラムコードを実行するように動作し、
第２のサーバコンピュータは、前記第１のサーバコンピュータから前記スプレッドシートの前記ＸＭＬＳＳバージョンに対する前記要求を受け取るように動作し、データベースから前記スプレッドシートのネイティブバージョンを検索するように動作し、前記スプレッドシートの前記ネイティブバージョンを前記スプレッドシートの前記ＸＭＬＳＳバージョンに変換するように動作し、前記スプレッドシートの前記ＸＭＬＳＳバージョンを用いて前記第１のサーバコンピュータからの前記要求に応答するよう動作する、
ことを特徴とするシステム。
【請求項１６】
前記スプレッドシートドキュメントの前記描画可能バージョンは、前記スプレッドシートドキュメントを描画する際に使用するためのマークアップ言語タグ、および、前記スプレッドシートの前記表示可能バージョンとの対話性を提供するために前記ウェブブラウザ中で実行可能なスクリプトのみを備える、ことを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記スプレッドシートの前記描画可能バージョンは、前記スプレッドシートの前記ネイティブバージョンを表示する場合に前記スプレッドシートアプリケーションプログラムにより提供された可視表示と実質的に同様に見える、ことを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記第１のサーバコンピュータから前記スプレッドシートの前記描画可能バージョンを要求するように動作し、かつ前記スプレッドシートの前記描画可能バージョンを前記第１のサーバコンピュータから受け取ったとき描画するように動作するウェブブラウザアプリケーションプログラムをさらに備える、ことを特徴とする請求項１７に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ウェブブラウザ(web browser)内からスプレッドシート(spreadsheet)を表示(viewing)して対話(interacting)するための方法および装置に関する。
【背景技術】
【０００２】
インターネットの出現および爆発的普及により、コンピュータユーザは、事実上いずれの場所からも、事実上いずれの種類の電子ドキュメントにも手軽にアクセスすることに慣れている。特に、「ウェブ」（ＷＷＷ：World Wide Web）およびウェブブラウザ・アプリケーション・プログラムの激増により、文字および図形ドキュメントなどの、多くの種類のドキュメントに大変手軽にアクセスできるようになって来た。ウェブブラウザ・アプリケーション・プログラムにより、ユーザは、何の付加ソフトウェアの必要性もなしに、多くの種類の電子ドキュメントにアクセスしかつ表示することができる。
【０００３】
しかしながら、ある種類(some type)の電子ドキュメント(electric document)に対しては、ウェブブラウザは付加ソフトウェア(additional software)の使用なしでドキュメントを描画(rendering)することができない。例えば、ウェブブラウザ・アプリケーション・プログラムにより元来描画可能でない(natively renderable)電子ドキュメントに対しては、そのドキュメントの表示を可能にするためには、ウェブブラウザアプリケーションに関連してヘルパーすなわち「プラグイン(plug-in)」プログラムが利用されねばならない。ウェブブラウザアプリケーションのコンテキストにおいて、表示可能(viewable)にするためにプラグインの使用を必要とするような種類のドキュメントの１つは、電子スプレッドシートドキュメント(electronic spreadsheet document)である。
【０００４】
過去においては、電子スプレッドシートドキュメント（ここでは「スプレッドシート（spreadsheet）」あるいは「ワークブック（workbook）」と呼ぶ）は、ウェブブラウザ・アプリケーション・プログラムのコンテキストにおいて、プラグインの使用なしでは表示できなかった。しかしながら、コンピュータユーザには、プラグインの使用は様々な意味でもどかしいものである場合がある。第１に、ユーザが低速の接続を介してインターネットに接続されている場合、そのプラグインをダウンロードし、インストールするためにはかなりの時間がかかる場合がある。第２に、プラグインは通常、特定な商標のウェブブラウザとともに使用するために作られているため、プラグインが入手できなかったり、あるいはユーザが利用しているウェブブラウザアプリケーションと、互換性がない場合がある。さらに、ユーザはまた多くの場合、プラグインがスプレッドシートを表示する能力を提供するだけにとどまり、かつユーザにスプレッドシートと対話し、これを編集する能力を許容する場合でさえ、その対話および編集のコンテキストが、そのスプレッドシートを作成したスプレッドシートアプリケーションプログラムが充分に機能した場合のコンテキストと合致しないことに失望する場合がある。ウェブブラウザのプラグインを利用することに代わる手段として、ユーザはスプレッドシートアプリケーションプログラムを利用し、「ＨＴＭＬ」（HyperText Markup Language）フォーマットのスプレッドシートのバージョンを保存するかも知れない。そしてユーザは、スプレッドシートのＨＴＭＬバージョンにウェブブラウザアプリケーションによりアクセスするかも知れない。しかしながら、この方法は、ユーザがＨＴＭＬファイルとしてスプレッドシートファイルをマニュアルで保存することを必要とする。そのうえ、ウェブブラウザ中のスプレッドシートのＨＴＭＬバージョンを表示することもまた、スプレッドシートと対話し、あるいはそれを編集する能力を提供する訳ではない。さらに、これまでのソリューションを使用してスプレッドシートのＨＴＭＬバージョンを表示することでは、ユーザがなじみ親しんでいる可能性があるスプレッドシートアプリケーションプログラムと実質的に同様な視覚的インターフェースを提供することはない。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
よって、上記の点およびその他の点に鑑み、本発明の様々な実施形態を提供することとした。
【課題を解決するための手段】
【０００６】
本発明によると、上記の問題および他の問題は、スプレッドシート、あるいは１つまたは複数のスプレッドシートを含むワークブックを、ウェブブラウザ・アプリケーション・プログラムのコンテキストにおいて、表示し、変更することを可能とするための方法、システム、および装置により解決される。本発明の形態では、支援アプリケーションすなわち「プラグイン」などのいずれの付加的ソフトウェアを必要とすることなく、ウェブブラウザアプリケーション中からスプレッドシートあるいはワークブックを表示し、それらと対話する。さらに、ウェブブラウザ中で描画(render)される場合には、スプレッドシートアプリケーションプログラムにより表示された場合のスプレッドシートと実質的に同様な方法でそのスプレッドシートが表示される。
【０００７】
本発明の一形態によると、ウェブブラウザ・アプリケーション・プログラムのコンテキスト中からスプレッドシートを表示し、これと対話する方法が提供される。この方法によると、ウェブブラウザ・アプリケーション・プログラム中のスプレッドシートドキュメントを開くために要求が受け取られる。この要求に応答して、ウェブブラウザ・アプリケーション・プログラムによりそのスプレッドシートドキュメントの描画可能な表示(representation)が生成される。そして、そのスプレッドシートドキュメントの表示(the representation of the spreadsheet document)はそのウェブブラウザ・アプリケーション・プログラムに伝達(transmit)される。そして、そのウェブブラウザ・アプリケーション・プログラムは、そのスプレッドシートドキュメントの表示(the representation of the spreadsheet document)を描画(rendering)することにより、そのスプレッドシートドキュメントの表示可能なバージョン(viewable version)を提供する。
【０００８】
本発明の他の形態によると、スプレッドシートの表示可能なバージョンは、スプレッドシートアプリケーションプログラムによりそのスプレッドシートドキュメントを表示するために利用されたときに提供された可視表示と実質的に同様に見えるように描画される。さらに、スプレッドシートドキュメントの表示には、そのスプレッドシートの表示可能バージョンとの対話性を提供するために、ウェブブラウザのコンテキストにおいて実行可能なスクリプトとともに、そのスプレッドシートドキュメントの表示を描画する（rendering）際に使用するための、マークアップ言語タグのみが含まれる。ウェブブラウザ中のスプレッドシートの表示可能バージョンとの対話性を提供するために、追加的プラグインあるいは支援アプリケーションは何も必要としない。
【０００９】
本発明の方法における他の形態によると、ウェブブラウザ中からスプレッドシートの形態を変更するためにユーザ要求を受け取る。その要求に応答して、ウェブブラウザのコンテキストにおいてスクリプトが実行され、要求された変更が実行される効果を生ずる。特に、そのスクリプトを実行することは、要求された変更を識別するデータをサーバコンピュータに伝達することを含む。サーバコンピュータは、データを受信することができ、それに応答して、要求された変更を反映する再計算されたスプレッドシートドキュメントを生成することができる。そして、サーバコンピュータはウェブブラウザ・アプリケーション・プログラムで描画することが可能な再計算されたスプレッドシートドキュメントの表示を生成し、再計算されたスプレッドシートドキュメントの表示をウェブブラウザ・アプリケーション・プログラム（ここでそれが描画される）に伝達することができる。
【００１０】
本発明の他の形態では、ウェブブラウザ・アプリケーション・プログラム中からスプレッドシートを表示し、かつそれと対話するための別の方法を提供する。この方法によると、ウェブブラウザ・アプリケーション・プログラム中から生成された、１つまたは複数のスプレッドシートを含むワークブックを求める要求が受け取られる。その要求に応答して、要求されたワークブックが検索され、計算される。そして、計算されたワークブックは「ＸＭＬＳＳ」（eXtensible Markup Language Spreadsheet）フォーマットに変換される。そして、ワークブックのＸＭＬＳＳバージョンはＸＭＬＳＳフォーマットから描画可能ドキュメントに変換される。本発明の種々の形態によると、描画可能ドキュメントには、ウェブブラウザアプリケーションにより描画可能なＨＴＭＬおよびスクリプトが含まれる。スクリプトは、ウェブブラウザのコンテキスト中からスプレッドシートを編集し、これと対話するための機能性を提供する。描画可能ドキュメントが生成されると、その描画可能ドキュメントを提供することにより、ワークブックを求める要求への応答が提供される。
【００１１】
本発明の方法における他の形態によると、描画可能ドキュメント(renderable document)には、ワークブックの表示(representation of the workbook)を描画(rendering)する際に使用するためのマークアップ言語タグ、およびワークブックの表示可能バージョンとの対話性を提供するために、ウェブブラウザのコンテキストにおいて実行可能なスクリプトのみが含まれる。さらに本発明の他の形態によると、描画可能ドキュメントは、スプレッドシートアプリケーションプログラムにより要求されたワークブックを表示するために利用されたときに提供された可視表示と、実質的に同様に見えるように、ウェブブラウザ中で描画される。
【００１２】
本発明のさらに他の形態によると、システムは、ウェブブラウザ・アプリケーション・プログラムのコンテキスト中から、スプレッドシートが表示され、かつ変更されることを可能とすることを提供する。本システムは、ウェブブラウザ・アプリケーション・プログラムから、スプレッドシートの描画可能バージョンを求める要求を受け取るためのプログラムコードを実行するように動作する、第１のサーバコンピュータを含む。第１のサーバコンピュータはまた、第２のサーバコンピュータからのＸＭＬＳＳフォーマットを使用して表示されたスプレッドシートのバージョンを要求するように動作する。第１のサーバコンピュータはスプレッドシートのＸＭＬＳＳバージョンを受け取るとまた、そのスプレッドシートのＸＭＬＳＳバージョンをスプレッドシートの描画可能バージョンに変換し、そのスプレッドシートの描画可能バージョンによりウェブブラウザからの要求に応答するように動作する。スプレッドシートドキュメントの描画可能バージョンは、スプレッドシートドキュメントを描画する際に使用するためのマークアップ言語タグ、およびスプレッドシートの表示可能バージョンとの対話性を提供するために、ウェブブラウザ中で実行可能なスクリプトのみを含む。さらに、スプレッドシートの描画可能バージョンは、スプレッドシートアプリケーションプログラムにより、スプレッドシートのネイティブバージョンを表示するために利用されたときに提供された可視表示と、実質的に同様に見える。
【００１３】
本システムはまた、第１のサーバコンピュータからの、スプレッドシートのＸＭＬＳＳバージョンを求める要求を受け取るように動作する、第２のサーバコンピュータを含む。そのような要求に応答して、第２のサーバコンピュータは、データベースからスプレッドシートのネイティブバージョン(native version)を検索(retrieve)し、スプレッドシートのそのネイティブバージョンをスプレッドシートのＸＭＬＳＳバージョンに変換(convert)し、そしてスプレッドシートのそのＸＭＬＳＳバージョンにより、第１のサーバコンピュータからの要求に応答するようにさらに動作する。
【００１４】
本発明は、コンピュータプロセス、コンピュータシステム、あるいはコンピュータプログラムプロダクトやコンピュータ可読媒体などの製造品の一品目として実施することができる。コンピュータプログラムプロダクトは、コンピュータシステムにより読み取り可能で、コンピュータプロセスを実行するためのコンピュータプログラム命令をコード化しているコンピュータ記憶媒体である場合がある。コンピュータプログラムプロダクトはまた、コンピュータシステムにより読み取り可能で、コンピュータプロセスを実行するためのコンピュータプログラム命令をコード化している搬送波上の伝播される信号である場合がある。
【００１５】
本発明を特徴付けている、これらおよび他の様々な特徴や利点は、以下の詳細な記述により、および関連図面を吟味することにより明らかになるであろう。
【発明を実施するための最良の形態】
【００１６】
ここでは図面（同様な数字は同様な要素を表している）を参照して、本発明の種々の形態を説明していく。特に、図１および対応する説明では、本発明の実施形態を実施する適切な計算環境の簡潔で一般的な記述を提供することを意図している。本発明は、サーバやパーソナルコンピュータシステム上で動作するプログラムモジュールの一般的な関係において記述してあるが、当業者は、本発明は、また他の種類のコンピュータシステムおよびプログラムモジュールと組み合わせて実施できることを認識するであろう。
【００１７】
一般的に、プログラムモジュールには、特定のタスクを実行し、あるいは特定の抽象データ型を実施する手順、プログラム、コンポーネント、データ構造、および他の種類の構造が含まれる。さらに当業者は、携帯端末、マルチプロセッサーシステム、マイクロプロセッサを用いた、あるいはプログラム式の家庭電化製品、ミニコンピュータ、汎用コンピュータ、および同様なものを含む、他のコンピュータシステム構成により本発明を実施できることを理解するであろう。また、通信ネットワークを介してリンクされる遠隔処理デバイスによりタスクが実行される分散計算コンテキストにおいても本発明を実施することができる。分散計算環境では、プログラムモジュールがローカルおよび遠隔のメモリ記憶デバイスの両方に位置することができる。
【００１８】
図１は、本発明の様々な実施形態で利用されるコンピュータ２に対する例示的コンピュータ構成が記述してある。図１に示されるコンピュータ構成は、中央処理ユニット５（「ＣＰＵ」：Central Processing Unit）、ランダム・アクセス・メモリ（「ＲＡＭ」：Random Access Memory）９および読み出し専用メモリ（「ＲＯＭ」：Read-Only Memory）１１を含むシステムメモリ７、およびメモリをＣＰＵ５へ接続するシステムバス１２を含む、従来型のデスクトップあるいはラップトップコンピュータを説明している。起動時などに、コンピュータ中の要素間で情報を転送するために役立つ基本的手順を含むＢＩＯＳ（Basic Input/Output System、基本入出力システム）はＲＯＭ１１に格納される。コンピュータ２はさらにオペレーティングシステム１６、アプリケーションプログラム、および他のプログラムモジュールを格納するための大容量記憶デバイス１４を含み、以下でより詳細に記述していく。
【００１９】
大容量ストレージデバイス１４は、バス１２に接続された大容量記憶制御機構（図示せず）を介して、ＣＰＵ５に接続される。大容量ストレージデバイス１４およびその関連付けられたコンピュータ可読媒体は、コンピュータ２に対して不揮発性ストレージを提供する。ここに含まれるコンピュータ可読媒体という記述はハードディスクやＣＤ−ＲＯＭなどの大容量ストレージデバイスを意味するが、コンピュータ可読媒体は、コンピュータ２からアクセスできる任意の利用可能な媒体であり得ることが当業者により理解されるべきである。
【００２０】
限定するものではなく一例として、コンピュータ可読媒体はコンピュータ記憶媒体および通信媒体を含む。コンピュータ記憶媒体は、コンピュータで読み取り可能な命令、データ構造、プログラムモジュール、あるいは他のデータなどの情報を格納するために、任意の方法あるいは技術で実現された、揮発性および不揮発性、着脱可能および着脱不可能な媒体を含む。コンピュータ記憶媒体には、限定するものではないが、ＲＡＭ、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、あるいは他の半導体メモリ技術、ＣＤ−ＲＯＭ、「ＤＶＤ」（Digital Versatile Disk）、あるいは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスク記憶装置、あるいは他の磁気記憶デバイス、あるいは必要な情報を格納するために使用でき、コンピュータ２からアクセスできる他の任意の媒体が含まれる。
【００２１】
本発明の様々な実施形態によると、コンピュータ２は、インターネットなどのネットワーク１８を介する遠隔コンピュータへの論理的接続を使用して、ネットワーク化された環境で動作することができる。コンピュータ２はバス１２に接続されたネットワーク・インターフェース・ユニット２０を介してネットワーク１８に接続できる。他の種類のネットワークおよび遠隔コンピュータシステムに接続するために、ネットワーク・インターフェース・ユニット２０を利用できることもまた、理解すべきである。コンピュータ２はまた、キーボード、マウス、あるいは電子スタイラス（図１では示されていない）を含む、多くの他のデバイスからの入力を受け取り、そして処理するための入／出力コントローラ２２を含む場合がある。同様に、入／出力コントローラ２２は表示画面、プリンタ、あるいは他の種類の出力装置に出力を提供する場合がある。
【００２２】
上で簡潔に述べられたように、コンピュータ２の大容量ストレージデバイス１４およびＲＡＭ９には、Ｒｅｄｍｏｎｄ，ＷａｓｈｉｎｇｔｏｎのＭＩＣＲＯＳＯＦＴ社からの、ＷＩＮＤＯＷＳ（登録商標）  ＸＰオペレーティングシステムなどの、ネットワーク化されたパーソナルコンピュータの動作を制御するために適切なオペレーティングシステム１６を含む、多くのプログラムモジュールおよびデータファイルを格納できる。大容量ストレージデバイス１４およびＲＡＭ９にはまた、１つまたは複数のプログラムモジュールを格納できる。特に、大容量ストレージデバイス１４およびＲＡＭ９にはウェブブラウザ・アプリケーション・プログラム１０を格納できる。当業者にとって既知であるように、ウェブブラウザ・アプリケーション・プログラム１０は、ＨＴＭＬを使用してフォーマットされているウェブページ２４などの、電子ドキュメントを要求し、受け取り、描画し、そして電子ドキュメントとの対話性を提供するように動作する。さらに、ウェブブラウザ・アプリケーション・プログラム１０はウェブページ２４に含まれる、ＳＵＮ  ＭＩＣＲＯＳＹＳＴＥＭＳ社からのＪａｖａ（登録商標）Ｓｃｒｉｐｔ言語を利用して表示されたスクリプトなどの、スクリプトを実行するように動作することができる。本発明の一実施形態によると、ウェブブラウザ・アプリケーション・プログラム１０はＭＩＣＲＯＳＯＦＴ社からのＩＮＴＥＲＮＥＴ  ＥＸＰＬＯＲＥＲウェブブラウザ・アプリケーション・プログラムを含む。しかしながら、本発明の種々の形態を実施するために、ＭＯＺＩＬＬＡ  ＦＯＵＮＤＡＴＩＯＮからのＦＩＲＥＦＯＸウェブブラウザアプリケーションなどの、他のメーカーからの他のウェブブラウザ・アプリケーション・プログラムを利用できることを理解すべきである。
【００２３】
以下でより詳細に記述されるように、ウェブページ２４はスプレッドシートドキュメントの表示可能な表示を含む。特に、ウェブページ２４はＨＴＭＬおよびスクリプトを含み、ウェブブラウザアプリケーション１０により表示すると、スプレッドシートに対する可視表示を提供することができる。さらに、コンピュータのユーザは、ウェブページ２４に含まれるスクリプトにより、ウェブブラウザアプリケーション１０で提供される表示と対話して、スプレッドシートを変更することが可能となる。ウェブブラウザアプリケーション１０により提供される可視表示から、ユーザはまた、元々のスプレッドシートファイルをスプレッドシートアプリケーションプログラム２６で開くよう要求することを許容される。そのような要求に応答しては、スプレッドシートアプリケーション２６が起動され、そして、ウェブページ２４で表示されたスプレッドシートに対応する元々のスプレッドシートファイルがスプレッドシートアプリケーションプログラム２６によりロードされる。スプレッドシートアプリケーションプログラム２６はＭＩＣＲＯＳＯＦＴ社からのＥｘｃｅｌスプレッドシートアプリケーションプログラム、あるいは別のメーカーからの別のスプレッドシートアプリケーションプログラムを含むことができる。ウェブブラウザアプリケーション１０のコンテキスト中からスプレッドシートを表示し、これと対話するための処理に関する追加的な詳細は、図２〜図９を参照して以下に明らかにしていく。
【００２４】
図２は、本発明の様々な実施形態に対する動作環境を説明したネットワーク構成図を示す。図２に示されるように、コンピュータ２はネットワーク１８に接続される。また、アプリケーションサーバ３０もネットワーク１８に接続される。アプリケーションサーバ３０は、図１に関して説明した従来型のコンピュータの一部あるいはすべてのコンポーネントを含むサーバコンピュータを備える。加えて、アプリケーションサーバ３０は、アプリケーションサーバ３０に格納された、あるいはそこからアクセス可能であるドキュメントを求める要求を受け取り、それに応答するためにウェブサーバアプリケーションを実行するように動作する。さらに、アプリケーションサーバ３０は、ウェブアプリケーション３４により生成されたページを求める要求を受け取り、それに応答するように動作する。ウェブアプリケーション３４は、アプリケーションサーバ３０で実行可能なコード、他のコンピュータと通信するための実行可能なコードを含み、当業者にとって既知であるテンプレート、図形、音声ファイル、および他のコンテンツを含むことを理解すべきである。
【００２５】
本発明の一形態によると、ウェブアプリケーション３４は、ネットワーク１８を介してアクセス可能なスプレッドシートあるいはワークブックと対話するために、コンピュータ２のユーザにインターフェースを提供するように動作する。特に、ウェブアプリケーション３４はサーバ「ＡＰＩ」（Application Programming Interface）３８を利用する。本発明のこの実施形態によると、サーバＡＰＩ３８は、スプレッドシートサーバ３２との通信を可能にするように動作する。スプレッドシートサーバ３２は、スプレッドシートサーバプログラム４０を実行するように動作する。スプレッドシートサーバプログラム４０は、データベース４２に格納されたスプレッドシート、およびワークブック４４などを検索し、計算するための実行可能なプログラムを含む。ここに記述する本発明の実施形態において、スプレッドシートサーバプログラム４０はＭＩＣＲＯＳＯＦＴ社からのＥＸＣＥＬ ＣＡＬＣＵＬＡＴＩＯＮ ＳＥＲＶＥＲプログラムを含むことを理解すべきである。しかしながら、サーバコンピュータでスプレッドシートを計算するための他のプログラムも利用できる。計算サーバ３２が図１に関して上で説明した従来型のハードウェアおよびソフトウェアコンポーネントの多くを含む場合があることもまた、理解すべきである。
【００２６】
以下でより詳細に説明するように、コンピュータ２は、ウェブブラウザアプリケーション１０のコンテキストにおいて、ワークブック４４を表示するためにアプリケーションサーバ３０に要求を伝達することができる。そのような要求に応答して、ウェブアプリケーション３４はサーバＡＰＩ３８を介して計算サーバ３２と通信する。特に、ウェブアプリケーション３４は計算サーバ３２からの適切なワークブック４４を要求する。以下でより詳細に説明するように、そのような要求に応答して計算サーバプログラム４０は、ワークブック４４を検索して、ワークブック４４をＸＭＬＳＳフォーマットに変換する。当業者にとって既知であるように、ＸＭＬＳＳフォーマットはスプレッドシートの内容を表示するためにマークアップ言語スキーマを含む。スプレッドシートサーバプログラム４０が要求されたワークブック４４をＸＭＬＳＳフォーマットに変換すると、そのＸＭＬＳＳにフォーマットされたファイルがウェブアプリケーション３４に返される。
【００２７】
ウェブアプリケーション３４がワークブック４４のＸＭＬＳＳ表示をスプレッドシートサーバ３２から受け取ると、アプリケーションサーバ３０は、スプレッドシートウェブレンダラ３６を利用し、ＸＭＬＳＳにフォーマットされたスプレッドシートを、ウェブブラウザアプリケーション１０により描画することができるスプレッドシートの表示に変換する。特にスプレッドシートウェブレンダラ３６は、ＸＭＬＳＳにフォーマット済みのドキュメントを、スプレッドシートを表示するためにウェブブラウザアプリケーション１０で描画することができるＨＴＭＬを含むドキュメントに変換する。さらに本発明の実施形態によるとスプレッドシートウェブレンダラ３６は、ウェブブラウザアプリケーション１０により描画されると、スプレッドシートアプリケーション２６が利用され、同じワークブック４４が表示されたときの出力と、実質的に同様に見えるＨＴＭＬを出力することが可能である。スプレッドシートウェブレンダラ３６が、ファイルの描画を完成すると、それがアプリケーションサーバ３０によりコンピュータ２に返送され、そこでウェブブラウザアプリケーション１０は描画することができる。
【００２８】
また、以下でより詳細に説明するように、スプレッドシートウェブレンダラ３６はまた、コンピュータ２のユーザがウェブブラウザアプリケーション１０のコンテキストにおいてスプレッドシートと対話することを可能とするために、１つまたは複数のスクリプトをマークアップ言語ファイルに埋め込むように動作する。この機能性を提供するために、スプレッドシートウェブレンダラ３６は、ウェブブラウザアプリケーション１０により実行可能なスクリプトコードを返送されるウェブページに埋め込むように動作する。スクリプトは例えば、ユーザがスプレッドシートのより大きい部分を表示することを可能とするための機能性を提供し、スプレッドシート中に含まれるピボットテーブルを変更し、スプレッドシートアプリケーション２６でのスプレッドシートのネイティブバージョンをロードし、そして他の機能を実行することができる。
【００２９】
ウェブブラウザアプリケーション１０のコンテキストにおけるスプレッドシートとの対話性を提供するために、ウェブブラウザアプリケーション１０はユーザ入力を受け取る。ある種類のユーザ入力に応答して、スクリプトが実行される場合がある。スクリプトが実行されると、実行されたスプレッドシートの中の要素を示す応答をアプリケーションサーバ３０に伝達し、為された対話の種類を識別して、さらに適切な要素について実行されるべき機能をウェブアプリケーション３４に対して識別する。そのような要求を受け取ることに応答して、ウェブアプリケーションは計算サーバ３２に更新されたワークブック４４を追加要求する。それに応答して、スプレッドシート計算サーバのプログラム４０は、そのユーザのアクションを考慮してワークブック４４を再計算し、更新されたワークブックのＸＭＬＳＳによりフォーマットされた表示をウェブアプリケーション３４に提供する。次に、スプレッドシートウェブレンダラ３６は、更新されたワークブックを、ウェブブラウザアプリケーション１０により描画可能なフォーマットに描画するように動作する。次に、ウェブアプリケーション３４はコンピュータ２にその更新されたスプレッドシートを伝達するように動作し、そこでウェブブラウザアプリケーション１０がそれを描画することができる。ウェブブラウザアプリケーション１０のコンテキスト中からユーザがスプレッドシートと対話する都度、何回でもこのプロセスを繰り返すことができる。ユーザがウェブブラウザアプリケーション１０中でスプレッドシートの編集を終了すると、スプレッドシートに為されたどんな変更も、ウェブアプリケーション３４、計算サーバ３２を介して、データベース４２に格納されたワークブック４４に伝播させることができる。これらの様々な処理に関する追加的な詳細は図３〜図９に関連して以下に説明する。
【００３０】
図３は、ウェブブラウザ・アプリケーション・プログラムのコンテキスト中からスプレッドシートを表示し、これと対話するための処理を説明する、例示的手順３００を記述してある。ここに記述した本発明の実施形態はウェブブラウザ・アプリケーション・プログラムのコンテキストにおいて提示されるが、マークアップ言語のドキュメントの描画を支援する他の種類のアプリケーションプログラムで本発明を利用できることを理解すべきである。ここに記述される本発明の実施形態は、例えば、個人情報マネージャー・アプリケーション・プログラム、プレゼンテーション・アプリケーション・プログラム、ドローイングあるいはＣＡＤ（Computer-Aided Design）アプリケーションプログラム、あるいはデータベース・アプリケーション・プログラムの中に利用され、専用のアプリケーションプログラムを必要としないでドキュメントを描画し、これと対話することを可能とすることができる。
【００３１】
ここに提示された手順の説明を読む場合、本発明の様々な実施形態の論理動作が以下のように実施されることを理解すべきである。すなわち、（１）コンピュータシステム上で動作する一連のコンピュータで実施される動作あるいはプログラムモジュールとして、および／または（２）コンピュータシステム中の相互接続された機械論理回路あるいは回路モジュールとして、である。その実施は本発明を実現する計算システムの性能要求に依存する選択の問題である。従って、図３および図６で説明され、本発明の実施形態を構成している論理動作は、動作（operation）、構造デバイス、行動（act）、あるいはモジュールというようにさまざまに呼ばれる。これらの動作、構造デバイス、行動、あるいはモジュールは、ここに付加されたクレームの中に記載されるような本発明の趣旨および範囲から逸脱することなく、ソフトウェアにより、あるいはファームウェアにより、さらには専用デジタル論理回路により、およびそれらの任意の組み合わせにより、実施できるということが、当業者により認識されるであろう。
【００３２】
手順(routine)３００は動作(operation)３０２で開始し、そこではクライアントコンピュータ２はワークブック４４を求める要求をアプリケーションサーバ３０に伝達する。ウェブブラウザアプリケーション１０中で表示・編集するためにワークブック４４を開けるというその要求は、そのウェブブラウザアプリケーション１０を介して要求するユーザに応答して、コンピュータ２により伝達される。ユーザが利用可能なワークブックを表示し、表示・編集するためにワークブックの１つを選択することを可能とするために、アプリケーションサーバ３０は、ウェブに基づくインターフェース３０を提供することを理解すべきである。
【００３３】
手順３００は、動作３０２から動作３０４に進み、そこではアプリケーションサーバ３０が計算サーバ３２にワークブック４４を求める要求を伝達する。特に、ウェブアプリケーション３４はサーバＡＰＩ３８を利用し、スプレッドシートサーバプログラム４０と通信することができる。この通信経路を通して、ワークブック４４を求める要求が為される。
【００３４】
手順３００は、動作３０４から動作３０６に進み、そこではスプレッドシートサーバプログラム４０が、データベース４２から要求されたワークブック４４を検索する。次に、スプレッドシートサーバプログラム４０は動作３０８でワークブック４４の内容を計算する。計算動作３０８では、スプレッドシートアプリケーション２６によりワークブック４４を再計算する場合に実行される計算と同様な計算を含む。
【００３５】
計算サーバ３２がワークブック４４を計算すると、スプレッドシートサーバプログラム４０はまた、計算されたワークブックをＸＭＬＳＳフォーマットに変換するように動作する。上で説明したように、ＸＭＬＳＳフォーマットはスプレッドシートの内容を記述するためにマークアップ言語スキーマを含む。本発明の形態によると、ワークブック４４の一部のみがＸＭＬＳＳフォーマットに変換されることを理解すべきである。これは、スプレッドシートの表示可能部分のみがコンピュータ２に返送されることを可能とする。ウェブページ２４により提供されるインターフェースを介して追加部分が要求される。あるいは、ワークブック４４の全体がＸＭＬＳＳフォーマットに変換され、アプリケーションサーバ３０に返送される。
【００３６】
動作３１２では、計算サーバ３２がアプリケーションサーバ３０からの要求にＸＭＬＳＳにフォーマットされたワークブックにより応答する。次に、手順３００は動作３１４に進み、ここではアプリケーションサーバ３０上で実行されるスプレッドシートウェブレンダラ３６が、ＸＭＬＳＳでフォーマットされたワークブックを、ウェブブラウザアプリケーション１０により描画し、表示することができるフォーマットに変換する。特に、スプレッドシートウェブレンダラ３６は、ＸＭＬＳＳワークブックを、ＨＴＭＬおよびスクリプトの両方を含むウェブページ２４に変換する。ウェブブラウザ１０はこのＨＴＭＬを利用して、要求されたワークブック４４の内容を表示する。ウェブブラウザアプリケーション１０はこのスクリプトを利用して、ユーザが、ウェブブラウザアプリケーション１０のコンテキストにおいてスプレッドシートの描画されたバージョンと対話することを可能にする。
【００３７】
手順３００は、動作３１４から動作３１６に進み、そこではアプリケーションサーバがコンピュータ２からの当初のワークブック４４を求める要求に応答する。特に、アプリケーションサーバ３０はウェブブラウザアプリケーション１０のコンテキストにおいてワークブック４４を表示し、これと対話するために必要なＨＴＭＬおよびスクリプトを含む、ウェブページ２４をコンピュータ２に伝達する。
【００３８】
コンピュータ２がウェブページ２４を受け取ると、ウェブブラウザアプリケーション１０は、ウェブページ２４の内容を描画するように動作する。特にＨＴＭＬは、同じワークブック４４がスプレッドシートアプリケーション２６を利用して開けられた場合に、スプレッドシートアプリケーション２６により提供されたであろうワークブックと実質的に同様のワークブック４４の表示を提供するために描画される。さらに、ウェブブラウザアプリケーション１０は、コンピュータ２のユーザがウェブブラウザアプリケーション１０のコンテキストにおいてスプレッドシートと対話できるように、スクリプトを提供するように動作する。ユーザによるスプレッドシートとの対話に関する追加的詳細は図６〜図９に関連して以下で説明する。
【００３９】
図４は、スプレッドシートアプリケーションプログラム２６が、表示・編集のために利用され、ワークブック４４を開けた場合に提供する例示的画面表示を示している。図４は特に、スプレッドシートアプリケーションプログラム２６が、表示・編集のために利用され、ワークブック４４を開けた場合に提供するユーザ・インターフェース・ウィンドウ４００を示す。ウィンドウ４００はコマンド一覧５０、ツールバー５２、およびフォーマット用ツールバー５６を含む、多くの従来型の制御を含む。当業者にとって既知であるように、スプレッドシートアプリケーション２６のユーザは、これらのユーザ・インターフェース・ツールバーにより提供されるメニューおよびアイコンを利用でき、スプレッドシートアプリケーションプログラム２６の様々な機能にアクセスすることができる。
【００４０】
また、図４に示されるように、ウィンドウ４００は１つまたは複数の行および１つまたは複数の列を有する格子５８を含む。列および行は、従来型のスプレッドシートアプリケーションプログラムのユーザにとってなじみ深く、現在選択されているワークブックに対する作業空間を定義する。また、当業者にとって既知であるように、特定の行および列の組み合わせにより定義されたそれぞれのセルは数字あるいはテキストデータにより編集することができ、コマンドが様々なセル上で実行でき、事実上無制限の種類の解析動作を実行することができる。スプレッドシートアプリケーションプログラム２６により利用可能な様々な動作および機能は当業者にとって既知である。
【００４１】
ウィンドウ４００はまた、その時点で選択されたスプレッドシートの中で、あるいはその時点で選択されたワークブックの中の他のスプレッドシートの中で行き来する（navigate）ための様々なユーザインターフェース要素を含む。例えば、図４に示されたウィンドウ４００はユーザインターフェースボタン５４Ａ〜５４Ｃを含み、ユーザにより選択されると、ウィンドウ４００の中に該当するスプレッドシートが表示される効果を生ずる。図４に示されるユーザインターフェースのスライドバーなどの、その時点のスプレッドシートの中で、あるいは他のスプレッドシートへ行き来するためのウィンドウ４００の中の他のユーザインターフェースの項目は、当業者にとって既知である。以下でより詳細に説明するように、ここに提供される本発明の様々な実施形態により、ウェブブラウザアプリケーション１０が、同じワークブック４４を表示する場合に、スプレッドシートアプリケーション２６により提供された表示と実質的に同様な可視表示を提供することが可能となる。スプレッドシートアプリケーション２６が図４に示されたウィンドウ４００を生成するために利用したのと同一のワークブックを、ウェブブラウザアプリケーション１０が表示するために利用する場合に提供する画面表示は、図５を参照して説明する。
【００４２】
上で説明したように、図５は、ワークブック４４をウェブブラウザアプリケーション１０が利用し開けた場合に提供される、画面表示を示す。特に図５で例示された画面表示は、スプレッドシートアプリケーション２６により開かれ、図４に示された画面表示を提供するために利用されたのと同一のワークブック４４を、ウェブブラウザアプリケーション１０により開けて、本発明の種々の形態を利用する場合に提供される画面表示を示す。ウェブブラウザアプリケーション１０により提供される図５に示される画面表示が、図４に示されたスプレッドシートアプリケーション２６により提供された表示と実質的に同様であることを理解すべきである。
【００４３】
図５に示されるように、ウェブブラウザアプリケーション１０により提供されるウィンドウ５００は、ウェブブラウザ・アプリケーション・プログラムに関連付けられている多くの従来型のコンポーネントを含む。特に、このウィンドウはメニューバー６０、ツールバー６２、およびアドレスバー６４を含む。当業者にとって既知であるように、これらのユーザインターフェース項目はウェブブラウザアプリケーション１０が提供する様々な機能へのアクセスを提供する。ここに記述される本発明の種々の形態を利用する場合に、ウェブブラウザアプリケーション１０もまた、格子６８を含む画面表示を提供するように動作する。図５に示される格子６８は、図４に示された格子５８と実質的に同様であることを理解すべきである。特に、図５に示される格子６８は多くの行、列、および対応するセルを定義する。さらに、格子６８中に示されるセルは格子５８中に示されたセルと同一の内容を含む。格子６８のセルはまた、図４の格子５８中に示されたセルの内容と同一のフォント、色、位置調整、および他の属性を利用してフォーマットされる。
【００４４】
また、図５に示されるように、ウェブブラウザアプリケーション１０により提供される表示は、その時点で示されているワークブック上で様々な機能を実行するために、描画されたページ中に多くのユーザインターフェースボタンを含む。例えば、ボタン６６Ａを選択すると、その時点に選択されたワークブックをスプレッドシートアプリケーション２６の中で開けることができる。ユーザインターフェースボタン６６Ｂを利用すると、計算サーバ３２に格納されたワークブック４４のバージョンにその時点に開かれているワークブックに為された任意の変更を保存することができる。加えて、ボタン６６Ｃを利用すると、その時点に開かれているワークブックの内容を印刷することができる。
【００４５】
他のボタンを利用して、１つのワークブック中に含まれるいくつかのスプレッドシートの間で行き来することができる。例えば、図５のウェブブラウザアプリケーション１０のコンテキストにおいて示されたユーザインターフェースボタン７０Ａ〜７０Ｃは、スプレッドシートアプリケーションプログラム２６により提供された表示に関連して図４に例示したボタン５４Ａ〜５４Ｃと同様な機能を実行する。ウェブブラウザアプリケーション１０中で本発明の実施形態により提供される対話性に関して、追加的説明を図６〜図９により行う。
【００４６】
図６には、ウェブブラウザアプリケーション１０のコンテキストにおいて描画されたワークブックとユーザが対話することを可能とするための本発明の種々の形態を示した例示的手順６００を記述してある。手順６００は動作６０２で開始し、ここでウェブページを表示するために必要なＨＴＭＬ、およびユーザがスプレッドシートと対話することを可能とするために必要なスクリプトを含む、ウェブページ２４の内容が描画される。次に、手順６００は動作６０４に進み、ウェブブラウザアプリケーション１０は、表示されたスプレッドシートと対話するためのユーザ入力を受け取る。例えば、ウェブブラウザアプリケーション１０は、ワークブックの別のスプレッドシートを、そのスプレッドシートへのいずれの変更も保存するために、あるいは他の機能を実行するために、表示することを要求しつつ、ピボットテーブルの内容を変更する入力をユーザから受け取る。ウェブブラウザアプリケーション１０が１つまたは複数のスクリプトを実行し、入力を受け取り、対話が実行される効果を生ずるために、必要なアプリケーションサーバ３０との通信を実行できることを理解すべきである。
【００４７】
動作６０４でユーザから入力を受け取ると、動作６０６で適切なスクリプトが、ユーザにより為された特定のアクションを識別するアプリケーションサーバ３０にデータを伝達する。動作６０８では、アプリケーションサーバ３０がユーザにより為された特定のアクションを判定する。要求されたアクションが識別されると、アプリケーションサーバ３０は特定のアクションが特定のワークブック上に為されるよう要求するコマンドを計算サーバ３２に伝達する。上で説明したように、アプリケーションサーバ３０はサーバＡＰＩ３８を介して計算サーバ３２と通信する。
【００４８】
アプリケーションサーバ３０からその時点のワークブックにコマンドを実行する要求を受け取ったことに応答して、スプレッドシートサーバプログラム４０はワークブック４４に要求されたアクションを実行する。例えば、ユーザが、ピボットテーブル中の要素を再配列するよう要求している場合には、スプレッドシートサーバ４０はその要素の実際の再配列を実行する。アクションが実行されると、動作６１２でスプレッドシートサーバプログラム４０はワークブックを再計算する。再計算されたワークブックはユーザにより為された変更をウェブブラウザアプリケーション１０を介して、その時点に開いているワークブックに反映する。
【００４９】
ワークブック４４が再計算されると、計算サーバ３２は再計算されたワークブックをＸＭＬＳＳフォーマットに変換する。このプロセスは上で図３を参照して説明してある。再計算されたワークブックがＸＭＬＳＳフォーマットに変換されると、その再計算されたワークブックは計算サーバ３２からアプリケーションサーバ３０に伝達される。アプリケーションサーバ３０では、スプレッドシートウェブレンダラ３６が再計算されたスプレッドシートのＸＭＬＳＳバージョンをウェブブラウザアプリケーション１０で描画可能なフォーマットに変換する。次に、その再計算されたスプレッドシートの描画可能バージョンがウェブブラウザアプリケーション１０に伝達され、そこで描画され、ユーザに対して表示することができる。この処理は上で図３および動作３１２〜３１８を参照して記述されている。
【００５０】
次に図７〜図９を参照すると、ウェブブラウザアプリケーション１０のコンテキストにおいてスプレッドシートとユーザが対話する可能性に関して追加的説明が提供される。特に、図７には、ウェブブラウザアプリケーション１０により生成されたウィンドウ７００を示してある。ウィンドウ７００は、ウェブブラウザアプリケーション１０中に上で説明された方法で表示されるスプレッドシートの一部としてピボットテーブル７２を含む。ピボットテーブル７２はドロップダウンメニューが表示される効果を生ずるユーザインターフェースボタン７４を含む。そのドロップダウンメニューを介して、ユーザあるいはユーザグループを選ぶことができる。そのようなユーザの選択に応答して、この選択を反映するようにピボットテーブル７２が更新される。
【００５１】
一例として、図８では、ボタン７４が選択され、ウェブブラウザアプリケーション１０によりドロップダウンメニュー７６が表示される効果を生ずる。次に、ユーザはドロップダウンメニュー７６から表示された名前の１つ選択することができる。一例として、ユーザが名前「Blythe」を選択すると、ピボットテーブル７２の内容は、図９に示されるように再計算されて、再表示される。
【００５２】
ドロップダウンメニュー７６からの名前の選択に応答してピボットテーブル７２の内容を再計算して再表示するために、上で図６を参照して記述したように、クライアントコンピュータからアプリケーションサーバ３０に要求が送られ、計算サーバ３２により処理されねばならない。上で図３に関連して記述したように、ワークブックが再計算されると、ウェブブラウザ・アプリケーション・プログラム１０に返送される。この様に、ウェブブラウザ・アプリケーション・プログラム１０中に表示されたスプレッドシートへの事実上任意の種類の対話を実行することができる。
【００５３】
以上のように、本発明の様々な実施形態は、ウェブブラウザ・アプリケーション・プログラムのコンテキストにおいて、スプレッドシートを表示し、変更することを可能とするための、方法、システム、装置、およびコンピュータ可読媒体を含むことを理解すべきである。以上の明細書、実例、およびデータは本発明の組成物の製品および使用の完全な記述を提供する。本発明の趣旨および範囲から逸脱することなく多くの実施形態を作ることができ、本発明は、特許請求の範囲に記載された通りである。
【図面の簡単な説明】
【００５４】
【図１】本発明の様々な実施形態において利用できるコンピュータシステムを示したコンピュータシステム構成図である。
【図２】本発明の実施形態に対する説明的動作環境を示したネットワーク構成図である。
【図３】ウェブブラウザのコンテキスト中からスプレッドシートドキュメントの表示および編集を可能とするための例示的プロセスを示す処理図である。
【図４】本発明の種々の形態により提供される表示画面を例示した画面図である。
【図５】本発明の種々の形態により提供される表示画面を例示した画面図である。
【図６】ウェブブラウザのコンテキスト中からスプレッドシートドキュメントの表示および編集を可能とするための例示的プロセスを示す処理図である。
【図７】本発明の種々の形態により提供される表示画面を例示した画面図である。
【図８】本発明の種々の形態により提供される表示画面を例示した画面図である。
【図９】本発明の種々の形態により提供される表示画面を例示した画面図である。
【符号の説明】
【００５５】
５  中央処理ユニット
７  システムメモリ
９  ランダムアクセスメモリ
１０  ウェブブラウザアプリケーション
１１  読み出し専用メモリ
１４  大容量ストレージデバイス
１６  オペレーティングシステム
１８  ネットワーク
２０  ネットワークインターフェースユニット
２２  入／出力コントローラ
２４  ウェブページ
２６  スプレッドシートアプリケーション
３４  ウェブアプリケーション
３６  スプレッドシートウェブレンダラ
３８  サーバＡＰＩ
４０  スプレッドシート計算サーバ
４４  ワークブック
【図１】
2005353058.tif 000003
【図２】
2005353058.tif 000004
【図３】
2005353058.tif 000005
【図４】
2005353058.tif 000006
【図５】
2005353058.tif 000007
【図６】
2005353058.tif 000008
【図７】
2005353058.tif 000009
【図８】
2005353058.tif 000010
【図９】
2005353058.tif 000011
【外国語明細書】
2005353058000001.pdf