(57)【要約】  電子ドキュメント内の内容の表示を管理するための技術が開示される。具体的には、当該技術は、内容に関するヘッダを選択的に移動させることを可能にし得る。たとえば、データテーブル内のヘッダまたは電子ドキュメント内の内容についてのデータテーブルヘッダは、視認可能な内容を表示するようにヘッダを選択的に移動させるためのグラフィカルインターフェイスが動画化されるように、グラフィカルインターフェイスに表示されてもよい。ヘッダを選択的に移動させることにより、ヘッダに関連する内容がグラフィカルインターフェイスにおいて視認できる場合にヘッダが視認可能となるように電子ドキュメント内の内容の表示を管理することが可能になり得る。ドキュメント内のヘッダなどの内容を選択的に移動させることにより、ドキュメントは、関連する内容を一緒にレンダリングするように動画化または動画像の態様にレンダリングされ得る。
2019537083.tif 000002
【特許請求の範囲】
【請求項１】
方法であって、コンピュータシステムにおいて、
デバイスにおいて電子ドキュメント内の内容に対応するデータを表示するためのレイアウトを決定するステップを含み、前記レイアウトは、前記データの第１の次元に対応する第１のヘッダと、前記データの第２の次元に対応する第２のヘッダとを含み、前記データは、前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示され、前記方法はさらに、
前記デバイスにおいて前記電子ドキュメントの第１のビューを表示するための１つ以上の属性を識別するステップと、
前記デバイスにおける表示のためにグラフィカルインターフェイスを提供するステップとを含み、前記グラフィカルインターフェイスは、前記内容に対応する前記データの第１の部分をレンダリングする前記第１のビューを有し、前記第１のビューにおける前記第１のヘッダおよび前記第２のヘッダを有する前記第１の部分がレンダリングされ、前記方法はさらに、
前記グラフィカルインターフェイスとの対話に対応する入力を監視するステップと、
前記グラフィカルインターフェイスへの入力を監視することによって検出される前記第１のビューに対する調整に基づいて、前記第１のビューに対する前記調整のために前記第１のビューの一部分が前記グラフィカルインターフェイスにおいて視認できないことを検出するステップとを含み、前記第１のビューの前記一部分は前記第１のヘッダを含み、前記方法はさらに、
前記検出するステップに基づいて、前記デバイスにおいて前記電子ドキュメントの第２のビューを生成するステップを含み、前記第２のビューは、前記内容に対応する前記データの第２の部分を表示し、前記第２の部分は、検出された前記一部分に基づいて決定され、前記第２の部分は、前記第１のビューのうち検出された前記一部分に基づいて前記第１のヘッダに対応する変更として示され、前記第２のビューは、前記第１のビューにおいてレンダリングされるとおりに前記第２のヘッダを示し、前記方法はさらに、
前記デバイスにおいて表示される前記グラフィカルインターフェイスにおいて前記第１のビューを前記第２のビューと置換えるステップを含む、方法。
【請求項２】
前記対話は前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを垂直方向に調整し、前記第１のヘッダは行ヘッダである、請求項１に記載の方法。
【請求項３】
前記対話は、前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを水平方向に調整し、前記第１のヘッダは列ヘッダである、請求項１または２に記載の方法。
【請求項４】
前記第１のビューは、前記データの前記第１の部分が前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示される第１の本体を含み、前記第２のビューは、前記データの前記第２の部分が表示される第２の本体を含み、前記データの前記第２の部分は、前記データの前記第１の部分における少なくともいくらかのデータを含む、請求項１から３のいずれか１項に記載の方法。
【請求項５】
前記第２の部分には、前記第１のビューのうち検出された前記一部分に基づいて前記第１のヘッダに対応する変更についての修正済みの第１のヘッダが提示され、前記第２のビューにおける前記修正済みの第１のヘッダは前記データの前記第２の部分についての前記第１の次元を表現する、請求項１から４のいずれか１項に記載の方法。
【請求項６】
前記レイアウトはグリッドである、請求項１から５のいずれか１項に記載の方法。
【請求項７】
前記第１のヘッダは行ヘッダであり、前記第２のヘッダは列ヘッダである、請求項１から６のいずれか１項に記載の方法。
【請求項８】
前記第１のヘッダは列ヘッダであり、前記第２のヘッダは行ヘッダである、請求項１から７のいずれか１項に記載の方法。
【請求項９】
前記第１の次元は前記第２の次元とは異なっている、請求項１から８のいずれか１項に記載の方法。
【請求項１０】
システムであって、
１つ以上のプロセッサと、
前記１つ以上のプロセッサにアクセス可能なメモリとを含み、前記メモリは命令を含み、前記命令は、前記１つ以上のプロセッサによって実行されると、前記１つ以上のプロセッサに、
デバイスにおいて電子ドキュメント内の内容に対応するデータを表示するためのレイアウトを決定させ、前記レイアウトは、前記データの第１の次元に対応する第１のヘッダと、前記データの第２の次元に対応する第２のヘッダとを含み、前記データは、前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示され、さらに、
前記デバイスにおいて前記電子ドキュメントの第１のビューを表示するための１つ以上の属性を識別させ、
前記デバイスにおける表示のためにグラフィカルインターフェイスを提供させ、前記グラフィカルインターフェイスは、前記内容に対応する前記データの第１の部分をレンダリングする前記第１のビューを有し、前記第１のビューにおいて前記第１のヘッダおよび前記第２のヘッダを有する前記第１の部分がレンダリングされ、さらに、
前記グラフィカルインターフェイスとの対話に対応する入力を監視させ、
前記グラフィカルインターフェイスへの入力を監視することによって検出される前記第１のビューに対する調整に基づいて、前記第１のビューに対する前記調整のために前記第１のビューの一部分が前記グラフィカルインターフェイスにおいて視認できないことを検出させ、前記第１のビューの前記一部分は前記第１のヘッダを含み、さらに、
前記検出するステップに基づいて、前記デバイスにおいて前記電子ドキュメントの第２のビューを生成させ、前記第２のビューは、前記内容に対応する前記データの第２の部分を表示し、前記第２の部分は、検出された前記一部分に基づいて決定され、前記第２の部分は、前記第１のビューのうち検出された前記一部分に基づいて前記第１のヘッダに対応する変更として示され、前記第２のビューは、前記第１のビューにおいてレンダリングされるとおりに前記第２のヘッダを示し、さらに、
前記デバイスにおいて表示される前記グラフィカルインターフェイスにおいて前記第１のビューを前記第２のビューと置換えさせる、システム。
【請求項１１】
前記対話は前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを垂直方向に調整し、前記第１のヘッダは行ヘッダである、請求項１０に記載のシステム。
【請求項１２】
前記対話は、前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを水平方向に調整し、前記第１のヘッダは列ヘッダである、請求項１０または１１に記載のシステム。
【請求項１３】
前記第１のビューは、前記データの前記第１の部分が前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示される第１の本体を含み、前記第２のビューは、前記データの前記第２の部分が表示される第２の本体を含み、前記データの前記第２の部分は、前記データの前記第１の部分における少なくともいくらかのデータを含む、請求項１０から１２のいずれか１項に記載のシステム。
【請求項１４】
前記第２の部分には、前記第１のビューのうち検出された前記一部分に基づいて前記第１のヘッダに対応する変更についての修正済みの第１のヘッダが提示され、前記第２のビューにおける前記修正済みの第１のヘッダは前記データの前記第２の部分についての前記第１の次元を表現する、請求項１０から１３のいずれか１項に記載のシステム。
【請求項１５】
前記第１のヘッダは行ヘッダであり、前記第２のヘッダは列ヘッダである、請求項１０から１４のいずれか１項に記載のシステム。
【請求項１６】
前記第１のヘッダは列ヘッダであり、前記第２のヘッダは行ヘッダである、請求項１０から１５のいずれか１項に記載のシステム。
【請求項１７】
１つ以上のプロセッサによって実行可能な命令を格納するコンピュータ読取り可能媒体であって、前記命令は、前記１つ以上のプロセッサに、
デバイスにおいて電子ドキュメント内の内容に対応するデータを表示するためのレイアウトを決定させ、前記レイアウトは、前記データの第１の次元に対応する第１のヘッダと、前記データの第２の次元に対応する第２のヘッダとを含み、前記データは、前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示され、さらに、
前記デバイスにおいて前記電子ドキュメントの第１のビューを表示するための１つ以上の属性を識別させ、
前記デバイスにおける表示のためにグラフィカルインターフェイスを提供させ、前記グラフィカルインターフェイスは、前記内容に対応する前記データの第１の部分をレンダリングする前記第１のビューを有し、前記第１のビューにおいて前記第１のヘッダおよび前記第２のヘッダを有する前記第１の部分がレンダリングされ、さらに、
前記グラフィカルインターフェイスとの対話に対応する入力を監視させ、
前記グラフィカルインターフェイスへの入力を監視することによって検出される前記第１のビューに対する調整に基づいて、前記第１のビューに対する前記調整のために前記第１のビューの一部分が前記グラフィカルインターフェイスにおいて視認できないことを検出させ、前記第１のビューの前記一部分は前記第１のヘッダを含み、さらに、
前記検出するステップに基づいて、前記デバイスにおいて前記電子ドキュメントの第２のビューを生成させ、前記第２のビューは、前記内容に対応する前記データの第２の部分を表示し、前記第２の部分は、検出された前記一部分に基づいて決定され、前記第２の部分は、前記第１のビューのうち検出された前記一部分に基づいて前記第１のヘッダに対応する変更として示され、前記第２のビューは、前記第１のビューにおいてレンダリングされるとおりに前記第２のヘッダを示し、さらに、
前記デバイスにおいて表示される前記グラフィカルインターフェイスにおいて前記第１のビューを前記第２のビューと置換えさせる、コンピュータ読取り可能媒体。
【請求項１８】
前記対話は前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを垂直方向に調整し、前記第１のヘッダは行ヘッダである、請求項１７に記載のコンピュータ読取り可能媒体。
【請求項１９】
前記対話は、前記グラフィカルインターフェイスにおける要素の移動に対応し、前記移動により前記第１のビューを水平方向に調整し、前記第１のヘッダは列ヘッダである、請求項１７または１８に記載のコンピュータ読取り可能媒体。
【請求項２０】
前記第１のビューは、前記データの前記第１の部分が前記第１のヘッダの前記第１の次元および前記第２のヘッダの前記第２の次元に基づいて表示される第１の本体を含み、前記第２のビューは、前記データの前記第２の部分が表示される第２の本体を含み、前記データの前記第２の部分は、前記データの前記第１の部分における少なくともいくらかのデータを含む、請求項１７から１９のいずれか１項に記載のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、以下の特許出願の利益および優先権を主張するＰＣＴ特許出願である。
【０００２】
１．２０１７年９月１４日に提出され、「電子ドキュメントにおけるヘッダの表示を管理するための技術（TECHNIQUES FOR MANAGING DISPLAY OF HEADERS IN AN ELECTRONIC DOCUMENT）」と題された米国非仮出願第１５／７０４，９６６号
２．２０１６年９月１６日に提出され、「電子ドキュメントにおけるヘッダの表示を管理するための技術（TECHNIQUES FOR MANAGING DISPLAY OF HEADERS IN AN ELECTRONIC DOCUMENT）」と題された米国仮出願第６２／３９６，０６５号
３．２０１６年１１月３０日に提出され、「電子ドキュメントにおけるヘッダの表示を管理するための技術（TECHNIQUES FOR MANAGING DISPLAY OF HEADERS IN AN ELECTRONIC DOCUMENT）」と題された米国仮出願第６２／４２８，４７０号
上述の特許出願の各々の内容全体が、あらゆる目的のために引用によりこの明細書中に援用されており、この開示の一部とみなされる。
【０００３】
本願は、２０１６年９月１６日に提出され、「ディスプレイスクリーン、または、ディスプレイスクリーンのうち、データテーブルヘッダを選択的に移動させるための動画化されたグラフィカルユーザインターフェイスを備えた部分（DISPLAY SCREEN OR PORTION THEREOF WITH ANIMATED GRAPHICAL USER INTERFACE FOR SELECTIVE MOVEMENT OF A DATA TABLE HEADER）」と題された米国意匠特許出願第２９／５７８，０１６号［代理人整理番号０８８３２５−１０２４０７２（１７８１ＤＰＵＳ）］に関する。上述の特許出願は、そのあらゆる意図および目的のために引例によりこの明細書中に援用されている。
【背景技術】
【０００４】
背景
本開示は、概して、ドキュメント内の電子コンテンツを表示するための技術に関する。より具体的には、グラフィカルインターフェイス内の対話に基づいて電子コンテンツを生成およびレンダリングするための技術が開示される。
【発明の概要】
【発明が解決しようとする課題】
【０００５】
情報にアクセスするために多くの人々が電子ドキュメントに依拠するようになってきている。電子ドキュメントは、スプレッドシートドキュメントおよびウェブドキュメントと同様に、コンピュータ上のさまざまなアプリケーションで閲覧するために多くのさまざまな形で作成され得る。多くの場合、電子ドキュメント内の内容が多くのさまざまなアプリケーションで提示され得る。そのため、ドキュメントは、電子ドキュメントを生成するためのさまざまなフォーマットで、および／またはさまざまな技術もしくはツールを用いて、準備され得る。電子ドキュメント内の内容は、ドキュメントを表示するフォーマット、表示装置およびアプリケーションなどの多くの要因に基づいてさまざまにレンダリングされる可能性がある。場合によっては内容が視認できない可能性もある。たとえば、１つ以上のデータテーブルを含む電子ドキュメントが或るアプリケーションでは全く視認できない可能性もある。元々視認できない内容の残りを表示しようと試みて、結果として、それまで視認できていた内容を消失させてしまう可能性もある。一例においては、スクロールすると、視認できる内容に関するテーブルのヘッダ（たとえば、列ヘッダおよび行ヘッダ）がもはや視認できなくなる可能性がある。
【課題を解決するための手段】
【０００６】
概要
いくつかの実施形態においては、電子ドキュメント内の内容の表示を管理するための技術が提供される。具体的には、当該技術により、内容に関するヘッダを選択的に移動可能にすることができる。たとえば、データテーブル内のヘッダまたは電子ドキュメント内の内容についてのデータテーブルヘッダは、視認できる内容を表示するようにヘッダを選択的に移動させるためにグラフィカルインターフェイスが動画化されるように、グラフィカルインターフェイスに表示されてもよい。ヘッダを選択的に移動させることにより、ヘッダに関連する内容がグラフィカルインターフェイスにおいて視認できる場合にヘッダが視認可能となるように電子ドキュメント内の内容の表示を管理することが可能になり得る。ドキュメント内のヘッダなどの内容を選択的に移動させることにより、ドキュメントは、関連する内容を一緒にレンダリングするように動画化または動画像の態様にレンダリングされ得る。
【０００７】
この明細書中に開示されるこのような技術は、ドキュメントのビューが変化してもユーザがドキュメント内の内容のコンテキストを依然として視覚的に認識し続けることを可能にするために、電子的内容を閲覧するためのユーザ経験を視覚的に向上させる。当該技術はさらに、ドキュメント内の内容の表示をレンダリングするためのコンピュータによる全体的な処理量を減らすようにコンピュータの処理を改善させる。具体的には、コンピュータが、ドキュメントのフォーマットを処理もしくは再生成することが不要になり得るとともに、ならびに／または、ヘッダおよびヘッダに関するデータなどの関連内容を示すために視覚的表示のスクロールを調整することが不要になり得る。当該技術はさらに、ドキュメントのビューをユーザが調整するのに応じてユーザが関連内容を閲覧することを可能にする態様でドキュメントを視認不可能にし得るように、デジタル表示を管理するとともに電子ドキュメントをレンダリングするための技術などの技術分野を改善する。これらの技術は、調整可能なディスプレイによって影響される可能性のある他のタイプの内容をレンダリングするために実現されてもよい。
【０００８】
スクロール機構を実現したものもいくつかあるが、ユーザがビューをスクロールするとヘッダが最終的に視認できなくなる可能性があり、内容のコンテキストが失われてしまう。いくつかのアプリケーションは、アプリケーションの一部であるかまたは固定されているヘッダを実現する可能性がある。しかしながら、このようなヘッダでは、単一のドキュメント内の複数のテーブルの各テーブルごとにヘッダを設けることができない。固定されたヘッダはドキュメントではなくアプリケーションの一部であってもよい。それ以外の場合では、固定されたヘッダを持たないアプリケーションは、制御がスクリーンから外れた場合であっても、ヘッダ付きの内容を常にディスプレイに表示させることができないかもしれない。
【０００９】
いくつかの実施形態においては、コンピュータシステムは電子ドキュメント内の内容の表示を管理するために実現されてもよい。コンピュータシステムは、この明細書中に記載される方法および動作を実現するように構成されてもよい。コンピュータシステムは、１つ以上のプロセッサと、当該１つ以上のプロセッサにアクセス可能なメモリとを含み得る。メモリは命令を格納しており、当該命令は、１つ以上のプロセッサによって実行されると、この明細書中に記載される１つ以上の方法または動作を当該１つ以上のプロセッサに実行させる。さらに他の実施形態は、この明細書中に記載される方法および動作のための命令を用いるかまたは格納するシステムおよび機械読取り可能な有形記憶媒体に関する。
【００１０】
いくつかの実施形態においては、方法は、デバイスにおいて電子ドキュメント内の内容に対応するデータを表示するためのレイアウトを決定するステップを含み得る。当該レイアウトは、当該データの第１の次元に対応する第１のヘッダと、当該データの第２の次元に対応する第２のヘッダとを含み、当該データは、当該第１のヘッダの当該第１の次元および当該第２のヘッダの当該第２の次元に基づいて表示される。当該方法は、当該デバイスにおける当該電子ドキュメントの第１のビューを表示するための１つ以上の属性を識別するステップを含み得る。当該方法は、当該デバイスにおける表示のためにグラフィカルインターフェイスを提供するステップを含み得る。当該グラフィカルインターフェイスは、当該内容に対応する当該データの第１の部分をレンダリングする当該第１のビューを有し、当該第１のビューにおいて当該第１のヘッダおよび当該第２のヘッダを有する当該第１の部分がレンダリングされる。当該方法は、当該グラフィカルインターフェイスとの対話に対応する入力を監視するステップを含み得る。当該方法は、当該グラフィカルインターフェイスへの入力を監視することによって検出される当該第１のビューに対する調整に基づいて、当該第１のビューに対する当該調整のために当該第１のビューの一部分が当該グラフィカルインターフェイスにおいて視認できないことを検出するステップを含み得る。当該第１のビューの当該一部分は当該第１のヘッダを含む。当該方法は、当該検出するステップに基づいて、当該デバイスにおいて当該電子ドキュメントの第２のビューを生成するステップを含み得る。当該第２のビューは、当該内容に対応する当該データの第２の部分を表示する。当該第２の部分は、検出された当該一部分に基づいて決定される。当該第２の部分は、当該第１のビューのうち検出された当該一部分に基づいて当該第１のヘッダに対応する変更として示される。当該第２のビューは、当該第１のビューにおいてレンダリングされるとおりに当該第２のヘッダを示す。当該方法は、当該デバイスにおいて表示される当該グラフィカルインターフェイスにおいて当該第１のビューを当該第２のビューと置換えるステップを含み得る。
【００１１】
いくつかの実施形態においては、当該対話は当該グラフィカルインターフェイスにおける要素の移動に対応する。当該移動により当該第１のビューを垂直方向に調整する。当該第１のヘッダは行ヘッダである。いくつかの実施形態においては、当該対話は、当該グラフィカルインターフェイスにおける要素の移動に対応する。当該移動により当該第１のビューを水平方向に調整する。当該第１のヘッダは列ヘッダである。
【００１２】
いくつかの実施形態においては、当該第１のビューは、当該データの当該第１の部分が当該第１のヘッダの当該第１の次元および当該第２のヘッダの当該第２の次元に基づいて表示される第１の本体を含む。当該第２のビューは、当該データの当該第２の部分が表示される第２の本体を含む。当該データの当該第２の部分は、当該データの当該第１の部分における少なくともいくらかのデータを含む。
【００１３】
いくつかの実施形態においては、当該第２の部分には、当該第１のビューのうち検出された当該一部分に基づいて当該第１のヘッダに対応する変更についての修正済みの第１のヘッダが提示される。当該第２のビューにおける当該修正済みの第１のヘッダは当該データの当該第２の部分についての当該第１の次元を表現する。
【００１４】
いくつかの実施形態においては、当該レイアウトはグリッドである。当該第１のヘッダは行ヘッダであってもよく、当該第２のヘッダは列ヘッダであってもよい。当該第１のヘッダは列ヘッダであってもよく、当該第２のヘッダは行ヘッダであってもよい。当該第１の次元は当該第２の次元とは異なっていてもよい。
【００１５】
この明細書中に開示されるいくつかの実施形態は、この明細書中に開示される方法および動作を実現するように構成されるコンピュータシステムによって実現され得る。さらにいくつかの実施形態は、この明細書中に開示される方法および動作のための命令を用いるかまたは格納するシステム、コンピュータ製品および機械読取り可能な有形記憶媒体に関する。少なくとも１つの実施形態においては、システムは１つ以上のプロセッサおよびメモリを含み得る。当該メモリは、この明細書中に開示される方法および動作を実行するために当該１つ以上のプロセッサによって実行可能である命令を格納し得る。システムは、この明細書中に開示される方法および動作を実行するためにコンピュータ製品、システム、ポータブルコンシューマデバイス、機械読取り可能な有形記憶媒体、モジュールまたはそれらの組合せを含み得る。
【００１６】
上述または以下に記載される技術は、いくつかの方法およびいくつかの文脈において実現され得る。いくつかの実現例および文脈は、以下により詳細に記載されるように、添付の図面に関連付けて提供される。しかしながら、以下の実現例および文脈は多数あるうちのほんの数例に過ぎない。
【図面の簡単な説明】
【００１７】
【図１】本開示の一実施形態に従ったシステムの高レベル図である。
【図２Ａ】電子ドキュメント内の内容の表示を管理するためのプロセスを示す図である。
【図２Ｂ】電子ドキュメント内の内容の表示を管理するためのプロセスを示す図である。
【図２Ｃ】電子ドキュメント内の内容の表示を管理するためのプロセスを示す図である。
【図２Ｄ】電子ドキュメント内の内容の表示を管理するためのプロセスを示す図である。
【図３】いくつかの実施形態に従ったプロセスのフローチャートを示す図である。
【図４】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図５】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図６】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図７】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図８】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図９】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１０】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１１】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１２】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１３】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１４】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１５】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１６】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１７】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１８】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図１９】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図２０】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図２１】いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す図である。
【図２２】一実施形態を実現するための分散型システムを示す簡略図である。
【図２３】本開示の実施形態に従った、サービスがクラウドサービスとして提供され得るシステム環境のうち１つ以上のコンポーネントを示す簡略ブロック図である。
【図２４】本開示の一実施形態を実現するために用いられ得る例示的なコンピュータシステムを示す図である。
【発明を実施するための形態】
【００１８】
詳細な説明
以下の記載においては、説明の目的で、開示の実施形態の完全な理解をもたらすために具体的な詳細が述べられている。しかしながら、さまざまな実施形態がこれらの具体的な詳細なしでも実施され得ることは明らかであるだろう。図および記載は限定するよう意図されたものではない。
【００１９】
Ｉ．表示管理システムの高レベルの概要
図１は、いくつかの実施形態に従った、内容の表示を管理するシステム１００の例を示す。以下に記載される技術のうち１つ以上は、１つ以上のコンピュータシステムにおいて実現され得るかまたは１つ以上のコンピュータシステムを必要とし得る。図１におけるコンピューティング環境は、記載される実施形態の使用または機能の範囲に関する如何なる限定をも示唆するように意図されたものではない。
【００２０】
システム１００は、１つ以上のコンピュータシステム１０２、１２０（この明細書中においては「クライアントシステム」または「クライアント」と称される）および表示管理システム１５０を含み得る。クライアントはまた、この明細書中において「クライアント」と称され得る１つ以上のアプリケーションを含み得る。クライアントシステム１２０は１つ以上のアプリケーション１２２にアクセスし得る。表示管理システム１５０はコンピュータシステムによって実現され得る。クライアントシステムは１人以上のユーザによって操作され得る。各々のアプリケーションは表示管理システム１５０によって提供され得る。
【００２１】
クライアントシステム１０２、１２０および表示管理システム１５０は、１つ以上の通信ネットワーク１３０を介して通信可能に接続され得る。通信ネットワークの例は、インターネット、ワイドエリアネットワーク（wide area network：ＷＡＮ）、ローカルエリアネットワーク（local area network：ＬＡＮ）、イーサネット（登録商標）ネットワーク、パブリックネットワークまたはプライベートネットワーク、有線ネットワーク、無線ネットワークなど、およびそれらの組合せを含むが、それらに限定されない。さまざまな通信プロトコルは、ＩＥＥＥ８０２ＸＸスイートのプロトコル、ＴＣＰ／ＩＰ、ＩＰＸ、ＳＡＮ、アップルトーク、Ｂｌｕｅｔｏｏｔｈ（登録商標）および他のプロトコルなどの有線プロトコルおよび無線プロトコルをともに含む通信を容易にするために用いられてもよい。一般に、通信ネットワーク１３０は、クライアントシステムと表示管理システム１５０との間の通信を容易にする如何なる通信ネットワークまたはインフラストラクチャをも含み得る。
【００２２】
いくつかの実施形態においては、システム１００は、表示管理システム１５０、クライアントシステムまたはそれらの組合せによって実現される通信システムを含み得る。通信システムは、プッシュ通知サービス（たとえば、アップル社（Apple corporation）によって提供されるアップルプッシュ通知サービス（Apple Push Notification）またはグーグル社（Google corporation）によって提供されるグーグル通知サービス）を実現し得る。プッシュ通知サービスは、ネットワーク１３０を介する遠隔装置（たとえばエンドポイントのデバイスまたはクライアント）との通信を容易にし得る。プッシュ通知サービスは、構成されたアプリケーションをクライアントに送達し得る。内容の表示の変更は、通信のためのプル機構および／またはプッシュ機構（たとえば、プッシュまたはプル通知サービス）を用いて通信システムを介してシステム１００内において伝達され得る。プッシュ機構および／またはプル機構は表示管理システム１５０によって提供されるサービスのためにサブスクリプションベースで構成されてもよい。
【００２３】
表示管理システム１５０は、汎用コンピュータ、特化サーバコンピュータ（一例として、ＰＣサーバ、ＵＮＩＸ（登録商標）サーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウント式のサーバなどを含む）、サーバファーム、サーバクラスタ、分散型サーバ、またはその他の適切な配置および／もしくはそれらの組み合わせであり得る１つ以上のコンピュータおよび／またはサーバを含み得るコンピュータシステムを用いて実現されてもよい。たとえば、表示管理システム１５０は、本開示の一実施形態に従った、この明細書中に記載されるとおりに処理を実行するためのコンピュータシステムに対応し得る。表示管理システム１５０を構成するコンピューティングシステムは、ＨＴＴＰサーバ、ＦＴＰサーバ、ＣＧＩサーバ、Ｊａｖａ（登録商標）サーバ、データベースサーバなどを含む、任意の数のオペレーティングシステムまたはさまざまな追加のサーバアプリケーションおよび／もしくは中間層アプリケーションを実行し得る。例示的なデータベースサーバとしては、マイクロソフトなどから市販されているものが挙げられるが、これらに限定されない。一例においては、表示管理システム１５０は、オラクル社（Oracle Corporation）によって提供されるオラクル・エンタープライズ・パフォーマンス・レポーティング・クラウドサービス（Oracle Enterprise Performance Reporting Cloud Service：ＥＰＲＣＳ）などのサービスに含まれ得るかまたは当該サービスとして実現され得る。さまざまな実施形態においては、表示管理システム１５０は、以下の開示に記載される１つ以上のサービスまたはソフトウェアアプリケーションを実行するように構成され得る。たとえば、表示管理システム１５０はサブスクリプションに従ってサービスを提供してもよい。
【００２４】
いくつかの実施形態においては、表示管理システム１５０は、上述のものを含み得る１つ以上のコンピュータおよび／またはサーバを含むエンタープライズコンピューティングシステムまたはクラウドコンピューティングシステムとして実現されてもよい。表示管理システム１５０はいくつかのサブシステムおよび／またはモジュールを含み得るが、これらのうちいくつかは図示されていない可能性もある。たとえば、表示管理システム１５０はインターフェイス１５４および表示管理エンジン１５２を含み得る。表示管理エンジン１５２は表示管理機能を実行し得る。表示管理システム１５０は、図に示されるよりも多くもしくは少ない数のサブシステムおよび／もしくはモジュールを有してもよく、２つ以上のサブシステムおよび／もしくはモジュールを組合わせてもよく、または、サブシステムおよび／もしくはモジュールの別の構成もしくは配置を有していてもよい。表示管理システム１５０のサブシステムおよびモジュールは、ソフトウェア（たとえば、プログラムコード、プロセッサによって実行可能な命令）、ファームウェア、ハードウェアまたはそれらの組合せで実現されてもよい。いくつかの実施形態においては、ソフトウェアは、メモリ（たとえば、非一時的なコンピュータ読取り可能媒体）内、メモリデバイス上、または他のいくつかの物理的メモリ上に格納されてもよく、１つ以上の処理ユニット（たとえば、１つ以上のプロセッサ、１つ以上のプロセッサコア、１つ以上のＧＰＵなど）によって実行されてもよい。
【００２５】
いくつかの実施形態においては、表示管理システム１５０は他のサービスを提供してもよく、または、ソフトウェアアプリケーションは非仮想環境および仮想環境を含み得る。いくつかの実施形態においては、これらのサービスは、ウェブベースのサービスもしくはクラウドサービスとして、または、ソフトウェア・アズ・ア・サービス（Software as a Service：ＳａａＳ）モデルで、クライアントシステム１０２および１２０のユーザに提供されてもよい。表示管理システム１５０によって提供されるサービスはアプリケーションサービスを含み得る。アプリケーションサービスはＳａａＳプラットフォームを介して表示管理システム１５０によって提供されてもよい。ＳａａＳプラットフォームは、ＳａａＳカテゴリ下に入るサービスを提供するように構成されてもよい。ＳａａＳプラットフォームは、ＳａａＳサービスを提供するための基礎をなすソフトウェアおよびインフラストラクチャを管理および制御し得る。ＳａａＳプラットフォームによって提供されるサービスを利用することにより、顧客は、クラウドインフラストラクチャシステムとして実現され得る、表示管理システム１５０において実行するアプリケーションを利用することができる。ユーザは、顧客が別個のライセンスおよびサポートを購入することを必要としないアプリケーションサービスを取得することができる。さまざまな異なるＳａａＳサービスが提供され得る。クライアントシステム１０２および１２０を操作するユーザは、さらに、１つ以上のアプリケーションを利用して表示管理システム１５０と対話して、表示管理システム１５０のサブシステムおよび／またはモジュールによって提供されるサービスを利用し得る。
【００２６】
表示管理システム１５０は、少なくとも１つのメモリ、１つ以上の処理ユニット（またはプロセッサ）およびストレージを含み得る。処理ユニットは、ハードウェア、コンピュータ実行可能命令、ファームウェアまたはそれらの組合せにおいて適宜実現され得る。処理ユニットのコンピュータ実行可能命令またはファームウェア実現例は、この明細書中に記載されるさまざまな動作、機能、方法および／またはプロセスを実行するために任意の好適なプログラミング言語で書込まれたコンピュータ実行可能命令またはマシン実行可能命令を含み得る。表示管理システム１５０内のメモリは、処理ユニット上でロード可能かつ実行可能なプログラム命令だけでなく、これらのプログラムの実行中に生成されるデータをも格納し得る。メモリは、揮発性（ランダムアクセスメモリ（random access memory：ＲＡＭ）など）および／または不揮発性（読取専用メモリ（read-only memory：ＲＯＭ）、フラッシュメモリなど）であってもよい。メモリは、コンピュータ読取り可能記憶媒体などの任意の種類の永続的なストレージデバイスを用いて実現されてもよい。いくつかの実施形態においては、コンピュータ読取り可能記憶媒体は、悪意のあるコードを含む電子通信からコンピュータを保護するように構成されてもよい。コンピュータ読取り可能記憶媒体は、プロセッサ上で実行されるとこの明細書中に記載される動作を実行する命令を格納していてもよい。
【００２７】
表示管理システム１５０はまた、メモリ記憶装置または他の非一時的コンピュータ読取り可能記憶媒体などの任意の種類の永続的ストレージデバイスを用いて実現され得るストレージを含み得るかまたは当該ストレージに結合され得る。いくつかの実施形態においては、ローカルストレージは、１つ以上のデータベース（たとえば、ドキュメントデータベース、リレーショナルデータベースまたは他の種類のデータベース）、１つ以上のファイルストア、１つ以上のファイルシステム、またはそれらの組合せを含み得るか実現し得る。たとえば、表示管理システム１５０は、データストア１７０などの１つ以上のデータストアに結合されてもよく、または当該１つ以上のデータストアを含んでもよい。メモリおよび追加のストレージはコンピュータ読取り可能記憶媒体の全ての例として挙げられている。たとえば、コンピュータ読取り可能記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュールまたは他のデータなどの情報を格納するためのいずれかの方法または技術において実現される揮発性または不揮発性の、取外し可能であるかまたは取外し不可能である媒体を含み得る。さまざまなデータストアとして記載されているが、この明細書中に開示される技術に従ってデータを格納するためにより多くまたはより少ないデータストアが実現されてもよい。
【００２８】
表示管理システム１５０は、インターフェイス１５４を介してクライアントシステム１０２および１２０の複数のインスタンスを伝達し得る。インターフェイス１５４は１つ以上の通信プロトコルまたは言語によって規定されてもよい。いくつかの実施形態においては、インターフェイス１５４は、プログラミングインターフェイス（たとえば、アプリケーションプログラミングインターフェイス（application programming interface：ＡＰＩ））によって規定されてもよい。プログラミングインターフェイスは、内容の表示を管理するための呼出し可能な機能を含んでもよい。たとえば、インターフェイス１５４は、ウェブベースのサービスとしてアクセスを可能にするレプレゼンテーショナル・ステート・トランスファ（Representational State Transfer：ＲＥＳＴ）ベースのインターフェイスを提供してもよい。
【００２９】
いくつかの実施形態においては、インターフェイス１５４は、グラフィカルインターフェイスを生成してクライアントシステム１０２および１２０に提供し得る。たとえば、インターフェイス１５４は、ユーザ（たとえば、アドミニストレータ）が内容の表示を管理することを可能にするためにアドミニストレータグラフィカルインターフェイスを提供することができる。クライアントシステムは、インターフェイス１５４によって提供されるインターフェイスを介して内容の表示を管理する（たとえば、作成する、削除する、編集する、修正する、更新する、または読取る）ことができる。図４〜図９に示されるグラフィカルインターフェイスは、内容の表示を管理するためのグラフィカルインターフェイスの例である。
【００３０】
システム１００はまた、メモリ記憶装置または他の非一時的なコンピュータ読取り可能記憶媒体などの任意の種類の永続的ストレージデバイスを用いて実現され得るストレージを含み得るかまたは当該ストレージに結合され得る。いくつかの実施形態においては、ローカルストレージは、１つ以上のデータベース（たとえば、ドキュメントデータベース、リレーショナルデータベースまたは他の種類のデータベース）、１つ以上のファイルストア、１つ以上のファイルシステム、またはそれらの組合せを含み得るかまたは実現する。たとえば、システム１００はデータストア１７０に結合され得るかまたはデータストア１７０を含み得る。メモリおよび追加のストレージはコンピュータ読取り可能記憶媒体の全ての例として挙げられている。たとえば、コンピュータ読取り可能記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュールまたは他のデータなどの情報を格納するためのいずれかの方法または技術において実現される揮発性または不揮発性の、取外し可能であるかまたは取外し不可能である媒体を含み得る。データストア１７０はネットワークを介してアクセス可能であってもよい。いくつかの実施形態においては、表示管理システム１５０は、データストア１７０を用いて内容の表示を管理してもよい。
【００３１】
表示管理システム１５０は、この開示における技術に従って内容の表示を管理してもよい。内容は、電子画像、電子データ、音声、映像、メタデータまたは他の種類のデータを含み得る。電子ドキュメントは、電子ファイル、電子スプレッドシート、ハイパーテキスト・マークアップ言語（Hypertext markup language：ＨＴＭＬ）ドキュメント、または電子的に表示することができる内容を含む他の種類のドキュメントを含み得る。いくつかの実施形態においては、表示管理システム１５０は、自動的に、および／または、クライアントシステムからの要求に基づいて動作し得る。この開示により、本開示のいくつかの実施形態に従ったプロセスを例示するさまざまなフローチャートおよび技術が開示される。個々の実施形態は、フローチャート、フロー図、データフロー図、構造図またはブロック図として示されるプロセスと記載される可能性もある。フローチャートは動作を連続的な処理として記載することもあるが、動作の多くは並行してまたは同時に実行されてもよい。加えて、動作の順序は並び変えられてもよい。その動作が完了するとプロセスが終了するが、図に含まれない付加的なステップを有していてもよい。プロセスは、方法、機能、手順、サブルーチン、サブプログラムなどに対応し得る。プロセスが機能に対応している場合、それが終了することは、機能を呼出し機能または主機能に戻すことに対応し得る。
【００３２】
図に示されるプロセスは、１つ以上の処理ユニット（たとえば、プロセッサコア）、ハードウェアまたはそれらの組合せによって実行されるソフトウェア（たとえば、コード、命令、プログラム）において実現されてもよい。たとえば、図１の表示管理システム１５０は、図のいずれかに関連付けて記載されるプロセスを実現することができる。この明細書中に開示されるプロセスの全てまたはいくつかは、表示管理システム１５０、クライアントまたはそれらの組合せによって実行されてもよい。プロセスのうちのいずれかがサービスとして実現されてもよい。いくつかの実施形態においては、図における要素のいずれかが図に示されるよりも多くまたはより少ないサブシステムおよび／もしくはモジュールで実現されてもよく、２つ以上のサブシステムおよび／もしくはモジュールを組合わせてもよく、または、サブシステムおよび／もしくはモジュールの別の構成もしくは配置を有していてもよい。サブシステムおよびモジュールは、ソフトウェア（たとえば、プログラムコード、プロセッサによって実行可能な命令）、ファームウェア、ハードウェアまたはそれらの組合せにおいて実現されてもよい。いくつかの実施形態においては、ソフトウェアは、メモリ（たとえば、非一時的なコンピュータ読取り可能媒体）内、メモリデバイス上、または他のいくつかの物理的メモリ上に格納されてもよく、１つ以上の処理ユニット（たとえば、１つ以上のプロセッサ、１つ以上のプロセッサコア、１つ以上のＧＰＵなど）によって実行されてもよい。
【００３３】
図における特定の一連の処理ステップは、限定するように意図されたものではない。他のシーケンスのステップも代替的な実施形態に従って実行されてもよい。たとえば、本開示の代替的な実施形態は、概略的に上述されたステップを異なる順序で実行してもよい。さらに、図に示される個々のステップは、個々のステップにとって適切となるさまざまなシーケンスで実行され得る複数のサブステップを含み得る。さらに、特定の用途に応じて付加的なステップが追加されてもよくまたは削除されてもよい。当業者であれば、多くの変形例、変更例および代替例を認識するだろう。
【００３４】
いくつかの実施形態においては、データは１つ以上のデータ構造を用いて格納されてもよい。データ構造は、データをどのように格納しているか、どのようなデータが格納されているか、および／または、データがどこに格納されているかに応じてさまざまな方法で編成され得る。特定のデータを含むデータ構造の各々が示されているが、データを格納するためにより多くのデータ構造またはより少ないデータ構造が実現されてもよい。データ構造は、他のデータ構造に対する基準を含んでもよい。データ構造は、リンクリスト、アレイ、ハッシュテーブル、マップ、記録、グラフまたは他のタイプのデータ構造を含むがこれらに限定されない１つ以上のタイプのデータ構造を用いて実現されてもよい。データ構造は階層的に実現されてもよい。データ構造の各々は、ユーザによる入力に基づいて宣言的に規定されてもよい。データ構造は、テンプレート（たとえば、拡張マークアップ言語（Extended Markup Language：ＸＭＬ）などのマークアップ言語に基づいて定義されるテンプレート）に基づいて定義することができる。データ構造は、ドキュメントフォーマットとも称される１つ以上のフォーマットを有していてもよい。
【００３５】
ＩＩ．電子ドキュメントにおけるヘッダの表示を管理するためのプロセス
図２Ａ、図２Ｂ、図２Ｃ、図２Ｄおよび図３は、電子ドキュメントにおける内容の表示を管理するためのプロセスを示す。電子ドキュメント内の内容に対応するデータの表示が決定されると、プロセスの一部が設計時間中に実現され得る。設計時間の全体または一部において、実行時間中に実現されるプロセスを続行してもよい。実行時間は、デバイス（たとえば、クライアントデバイス）におけるディスプレイ上に電子ドキュメント内の内容を表示するためのビューをリアルタイムで決定するために実現されてもよい。以下に記載されるように、設計時間中、電子ドキュメント中の内容に対応するデータを表示するためのレイアウトが決定されてもよい。
【００３６】
図２Ａは、電子ドキュメントの内容を表示するための配置についての表示レイアウトの線図２００を示す。表示レイアウトは複数の部分または複数のコンポーネントを用いて配置されてもよい。当該配置を用いれば、内容が、当該内容のために表示されるヘッダを管理することができるようにレイアウトに表示され得る。表示管理システムは、デバイス（たとえば、クライアント）における電子ドキュメント内の内容に対応するデータを表示するためのレイアウトを決定してもよい。内容は文字、数、値および他の情報であってもよい。データは内容の電子的表現であってもよい。
【００３７】
レイアウトは、データに基づいて内容を表示するのに用いられるフォーマットであり得る。たとえば、レイアウトは、データテーブルなどのテーブルまたはグリッドであってもよい。レイアウトは、行ヘッダ２１０および列ヘッダ２０４などの１つ以上のヘッダを含み得るかまたは当該１つ以上のヘッダによって規定され得る。ヘッダは、内容に対応するデータの次元に対応し得る。たとえば、ある次元は、当該次元に対応するデータがデバイスのディスプレイ上の内容のビューに表示されるようなデータの属性であってもよい。少なくとも１つの実施形態においては、レイアウトは複数のヘッダを含み得る。ヘッダは、行ヘッダ、列ヘッダまたはそれらの組合せを含み得る。ヘッダは、１つ以上の次元に対応していてもよい。レイアウトは、列ヘッダと比べて、不均等な数の行ヘッダを有する可能性がある。各々のヘッダは複数の次元によって規定されてもよい。たとえば、レイアウトは、行ヘッダである第１のヘッダと、列ヘッダである第２のヘッダとを含み得る。たとえば、レイアウトは、列ヘッダである第１のヘッダと、行ヘッダである第２のヘッダとを含み得る。
【００３８】
内容に対応するデータは、第１のヘッダの次元および第２のヘッダの第２の次元に基づいて表示され得る。各々のヘッダに対応する次元は、列ヘッダの次元および行ヘッダの次元に対応するテーブルのセルにおけるデータなどの、交差する次元と一致するデータに基づいてデータが表示され得るように、異なっていてもよい。たとえば、ある次元は、データの特定のタイプ、カテゴリまたはアスペクトを規定する属性であってもよい。以下に開示されるように、ビューは、レイアウトを用いて電子ドキュメントの内容を表示するために生成されてもよい。ビューは、当該ビューがディスプレイ上で調整されるのに応じて変更されてもよくまたは生成されてもよい。
【００３９】
少なくとも１つの実施形態においては、表示管理システム１５０は内容を表示するためのレイアウトを決定し得る。たとえば、表示管理システム１５０は、セクション１（データ本体２１２）、セクション２（行ヘッダ２１０）、セクション３（列ヘッダ２０４）、およびセクション４（コーナー２０２）などの複数のセクションを有するレイアウトで内容を如何に表示するかを決定してもよい。内容は、４つのセクションなどの複数のセクションに基づいてレンダリングされたテーブルまたはグリッドに表示されてもよい。レイアウトは、レイアウトを規定するためのインターフェイスに対する入力に基づいて生成されてもよい。レイアウトは、この明細書中に開示されるように複数のセクションを用いて規定されてもよい。複数のセクションは、あるヘッダの次元を特定する入力に基づいて規定される複数のヘッダを含み得る。インターフェイスは、ユーザが次元を含むヘッダのサイズを指定することを可能にし得る。テーブルについての内容は、ヘッダなどのいくつかのセクションが別のセクションの内容（たとえば、データ本体２１２または内容に対応するデータ）の表示の調整に基づいて調整され得るように、複数のセクションを用いてレンダリングされてもよい。いくつかの実施形態においては、テーブルについて内容は、スプレッドシートアプリケーションなどのアプリケーションのインターフェイスによって提供されるヘッダ（たとえば、行ヘッダまたは列ヘッダ）の代わりにドキュメント内のヘッダ付きレイアウトに従って表示するように生成されてもよい。一例においては、データ本体２１２は、以下に説明するように、右下のコーナーにおいて表示されてもよい。この場合、列ヘッダ２０４はデータ本体２１２の上方に水平に位置決めされており、行ヘッダ２１０はデータ本体２１２の左側に垂直に位置決めされている。いくつかの実施形態においては、レイアウトは、ヘッダ２１０および２０４の位置を決定するために用いられるコーナー２０２を含んでもよい。いくつかの実施形態においては、テーブルは、ドキュメントの表示を調整可能にするためのレイアウトに基づいて表示される。このような実施形態は、複数のテーブルを電子ドキュメントにおいて示すことを可能にし得る。ヘッダは、これらヘッダがドキュメントのためにレンダリングされた内容とともに浮動または移動するように、内容の一部であってもよい。
【００４０】
内容は、行ヘッダおよび／または列ヘッダの浮動を可能にするように複数のテーブルのレイアウトを用いて表示されてもよい。コードまたは命令（JavaScript（登録商標）／jQueryなど）は、テーブルを表示するためのビューのためにドキュメントが調整される（たとえば、垂直または水平にスクロールされる）のに応じて、テーブルのヘッダを位置決めしてロックするように実現されてもよい。
【００４１】
ドキュメント内のテーブルは、スクロールしたときに適切なクリッピングを可能にする順序を規定するドキュメント・オブジェクト・モデル（document object model：ＤＯＭ）を用いて表示されてもよい。言いかえれば、ドキュメントのレイアウトはＤＯＭによって規定されてもよい。レイアウトは、電子ドキュメントとともに含まれるかまたは電子ドキュメントによって示される情報に基づいて決定されてもよい。たとえば、ドキュメントは、レイアウトを決定するために用いることができるメタデータを含み得る。別の例においては、レイアウトを決定するために、ドキュメント内の内容の言語（たとえば、ＨＴＭＬ）および／またはスタイル（たとえば、カスケードスタイルシート）のフォーマットが処理されてもよい。その順序はＤＯＭを用いて決定されてもよい。たとえば、順序は以下のように規定されてもよい。（１）データ本体２１２、（２）行ヘッダ２１０、（３）列ヘッダ２０４および（４）コーナー２０２。この順序はビューを生成するために用いられてもよい。デバイスのディスプレイ（たとえばスクリーン）の表示サイズが制限されている場合、表示するのをドキュメント内のデータの一部に制限することにより、ビューはデータおよび／またはヘッダの部分を隠すように生成され得る。セクションの順序は、データおよび／またはヘッダの部分を隠すために用いられてもよい。スティッキーなヘッダは、オーバーフローを用いてコンポーネントを自然にスクロールすることを可能にし得るが、データ本体がいずれも視認不可能となるまで必要に応じて当該ヘッダを制限することもできる。
【００４２】
いくつかの実施形態においては、レイアウトは、ドキュメントを表示するためのドキュメント内の内容の位置を分析することによって決定されてもよい。当該位置はコード（たとえば、JavaScript）によって決定されてもよい。ドキュメントのフォーマットでの内容の座標および／または所在地などの情報が分析される。ヘッダおよび／またはデータは、情報を表示するための複数のセルを有していてもよい。ヘッダおよびデータの位置が決定され得る。いくつかの実施形態においては、列ヘッダ（たとえば、列ヘッダの左側）と行ヘッダ（たとえば、行ヘッダの最上部）との交差の間のコーナーが、ヘッダの相対的位置を監視するために用いられてもよい。
【００４３】
図２Ｂは、電子ドキュメントの内容を表示するための配置についての表示レイアウトの線図２５０を示す。線図２５０は、図２Ａの線図２００に示されるレイアウトにおける垂直スクロールに基づき得る。図２Ａの線図２００の表示レイアウトにおけるセクション２０２、２０４、２１０および２１２は、ドキュメントについてのＤＯＭとして追加または規定され得る。テーブルを規定するセクションは、スクロールしたときに適切なクリッピングを可能にするための特定の順序でドキュメントについてのＤＯＭを形成するように追加されてもよい。少なくとも１つの実施形態においては、当該順序は以下のとおりであり得る。（１）データ本体２１２、（２）行ヘッダ２１０、（３）列ヘッダ２０４、および（４）コーナー２０２。スティッキーなヘッダは、基本的には、オーバーフローを用いてコンポーネントの本来のスクローリングを可能にするが、データ本体がいずれも視認不可能となるまで必要に応じて行ヘッダ、コーナーおよび列ヘッダを制限する。図２Ｂの例においては、垂直にスクロールする場合、コーナー２０２および１つ以上の列ヘッダ（たとえば列ヘッダ２０４）はコーナーおよび行ヘッダの垂直スクロール２５２のためにロックされ、列ヘッダ２０４およびデータ本体２１２は、データ本体（たとえば、データ本体２１２）の底部に達するまで垂直スクロール２５４のためにロックされる。行ヘッダ（たとえば、行ヘッダ２１０）およびデータ本体は、それぞれ、コーナーおよび列ヘッダの下を流動する。
【００４４】
図２Ｃは、電子ドキュメントの内容を表示するための配置についての表示レイアウトの線図２７０を示す。線図２７０は、図２Ａの線図２００に示されるレイアウトにおける垂直スクロールに基づき得る。図２Ｃに示される例においては、スクロール２７２、スクロール２７４などの水平スクロールの場合、コーナー２０４および行ヘッダ２０４は、データ本体２１２の右側に達するまで、列ヘッダ２１０およびデータ本体２１２と同様にロックされる。列ヘッダ２０４およびデータ本体は、それぞれ、コーナーおよび行ヘッダの下を流動する。
【００４５】
図２Ｄは、電子ドキュメントの内容を表示するための配置についての表示レイアウトの線図２８０を示す。線図２８０は、図２Ａの線図２００に示されるレイアウトにおける水平方向および垂直方向の両方へのスクロールに基づき得る。図２Ｄに示される例においては、水平方向２８４および垂直方向２８２の両方の場合、データ本体２１２の右底部に達するまで、コーナー２０２がロックされる。行ヘッダ２１０が上方にスクロールでき、列ヘッダ２０４が左側にスクロールできることに留意されたい。行ヘッダ２１０、データ本体２１２および列ヘッダ２０４はコーナー２０２の下を流動する。最終的に、スティッキーなコーナー２０２、行ヘッダ２１０、列ヘッダ２０４およびデータ本体２１２がスクロールされて視界から外れる。スティッキーなヘッダのアルゴリズムが全てのスクロールに対して呼出される。
【００４６】
図３は、電子ドキュメント内の内容の表示を管理するためのプロセスのフローチャート３００を示す。フローチャート３００の一部は、電子ドキュメント内の内容に対応するデータの表示が決定される設計時間中に実現されてもよい。設計時間の全体または一部において、実行時間中に実現されるプロセスを続行してもよい。フローチャート３００はステップ３０２〜３１４を含み得る。いくつかの実施形態が含み得るステップはより多くてもよくまたはより少なくてもよい。
【００４７】
ステップ３０２において、デバイス（たとえば、クライアント）において電子ドキュメント内の内容に対応するデータを表示するためのレイアウトが決定され得る。内容は文字、数、値および他の情報であってもよい。内容は、１つ以上のデータソースからアクセスされてもよく、および／または、別のコンピュータシステムから受取られてもよい。データは内容の電子的表現であってもよい。少なくとも１つの実施形態においては、レイアウトは、電子ドキュメントの内容を表示するための設計時間中に実現されるプロセスの一部として決定されてもよい。
【００４８】
レイアウトは、データに基づいて内容を表示するのに用いられるフォーマットであり得る。たとえば、レイアウトはグリッドまたはテーブルであってもよい。レイアウトは、１つ以上のヘッダに含まれていてもよく、または１つ以上のヘッダによって規定されてもよい。ヘッダは、内容に対応するデータの次元に対応し得る。たとえば、ある次元は、当該次元に対応するデータがデバイスのディスプレイ上の内容のビューに表示されるようなデータの属性であってもよい。少なくとも１つの実施形態においては、レイアウトは複数のヘッダを含み得る。ヘッダは、行ヘッダ、列ヘッダまたはそれらの組合せを含み得る。ヘッダは、１つ以上の次元に対応していてもよい。レイアウトは、列ヘッダと比べて、不均等な数の行ヘッダを有する可能性がある。各々のヘッダは複数の次元によって規定されてもよい。たとえば、レイアウトは、行ヘッダである第１のヘッダと、列ヘッダである第２のヘッダとを含み得る。たとえば、レイアウトは、列ヘッダである第１のヘッダと、行ヘッダである第２のヘッダとを含み得る。
【００４９】
いくつかの実施形態においては、レイアウトは設計プロセスの一部として決定されてもよい。レイアウトは、データのさまざまな次元を規定する属性を含んで表示されるようにデータに基づいて予め決定されてもよい。少なくとも１つの実施形態においては、レイアウトは、図４〜図９に関連付けて記載される技術を用いて決定されてもよい。特に図４〜図９は、電子ドキュメントを表示するための内容としてデータを表示するためのレイアウトを構成して決定するための設計プロセスを実現するためのグラフィカルインターフェイスを例示している。
【００５０】
内容に対応するデータは、第１のヘッダの次元および第２のヘッダの第２の次元に基づいて表示することができる。各々のヘッダに対応する次元は、列ヘッダの次元および行ヘッダの次元に対応するテーブルのセルにおけるデータなどの、交差する次元と一致するデータに基づいてデータが表示されるように、異なっていてもよい。たとえば、ある次元は、データの特定のタイプ、カテゴリまたはアスペクトを規定する属性であってもよい。以下に開示されるように、ビューは、レイアウトを用いて電子ドキュメントの内容を表示するために生成されてもよい。ビューは、当該ビューがディスプレイ上で調整されるのに応じて変更されてもよくまたは生成されてもよい。
【００５１】
少なくとも１つの実施形態においては、レイアウトは複数のセクションを有していてもよい。たとえば、テーブルまたはグリッドは、内容を表示するために４つのセクション（たとえば個々のテーブル）にレンダリングされてもよい。レイアウトは、レイアウトを規定するためのインターフェイスに対する入力に基づいて生成されてもよい。レイアウトは、この明細書中に開示されるように複数のセクションを用いて規定されてもよい。複数のセクションは、あるヘッダの次元を特定する入力に基づいて規定される複数のヘッダを含み得る。インターフェイスは、ユーザが次元を含むヘッダのサイズを指定することを可能にし得る。テーブルについての内容は、ヘッダなどのいくつかのセクションが別のセクションの内容（たとえば、データ本体または内容に対応するデータ）の表示の調整に基づいて調整され得るように、複数のセクションを用いてレンダリングされてもよい。いくつかの実施形態においては、テーブルについて内容は、スプレッドシートアプリケーションなどのアプリケーションのインターフェイスによって提供されるヘッダ（たとえば、行ヘッダまたは列ヘッダ）の代わりにドキュメント内のヘッダ付きレイアウトに従って表示するために生成されてもよい。一例においては、データ本体は、以下に記載されるように、右下のコーナーにおいて表示されてもよい。この場合、列ヘッダはデータ本体の上方に水平に位置決めされており、行ヘッダはデータ本体の左側に垂直に位置決めされている。いくつかの実施形態においては、レイアウトは、ヘッダの位置を決定するために用いられるコーナーを含んでもよい。いくつかの実施形態においては、テーブルは、ドキュメントの表示を調整可能にするためのレイアウトに基づいて表示される。このような実施形態は、複数のテーブルを電子ドキュメントにおいて示すことを可能にし得る。ヘッダは、これらヘッダがドキュメントのためにレンダリングされた内容とともに浮動または移動するように、内容の一部であってもよい。上に説明されるように、セクションは、スクロールしたときに適切なクリッピングを可能にする順序を規定するドキュメント・オブジェクト・モデル（ＤＯＭ）を用いて表示されてもよい。言いかえれば、ドキュメントのレイアウトはＤＯＭによって規定されてもよい。
【００５２】
いくつかの実施形態においては、レイアウトは、ドキュメントを表示するためのドキュメント内の内容の位置を分析することによって決定されてもよい。位置は、コード（たとえばJavaScript）によって決定されてもよい。ドキュメントのフォーマットでの内容の座標および／または所在地などの情報が分析される。ヘッダおよび／またはデータは、情報を表示するための複数のセルを有していてもよい。ヘッダおよびデータの位置が決定され得る。いくつかの実施形態においては、列ヘッダ（たとえば、列ヘッダの左側）と行ヘッダ（たとえば、行ヘッダの最上部）との交差の間のコーナーが、ヘッダの相対的位置を監視するために用いられてもよい。
【００５３】
ステップ３０４において、デバイスにおける表示のためのビュー（たとえば第１のビュー）を表示するための１つ以上の属性が識別されてもよい。属性は、表示されるべきデータおよび属性間の関係に基づき得る。各々の属性は、データを表示するための次元に対応し得る。各々の次元は、データ表示の目的であるヘッダに対応し得る。属性は、データを表示するためのレイアウトに基づいて識別されてもよい。各々の属性はある次元に関して識別されてもよい。以下に説明するように、属性は、データのビューを規定するセクションの構成に基づいて識別されてもよい。
【００５４】
ステップ３０６において、グラフィカルインターフェイスがビュー（たとえば、第１のビュー）の表示のためにデバイスにおいて提供され得る。電子ドキュメント内の内容のビュー（たとえば、第１のビュー）は、グラフィカルインターフェイス内のディスプレイ上に提供される。グラフィカルインターフェイスを提供することは、ビューを含むグラフィカルインターフェイスを生成することを含み得る。インターフェイスはディスプレイであってもよく、またはディスプレイに含まれていてもよい。インターフェイスは、デバイスにおけるアプリケーションに含まれていてもよい。ビューは、デバイスに提供されるインターフェイスにおいて生成されてもよい。グラフィカルインターフェイスを提供することは、ビューをレンダリングさせるように動作を実行することを含み得る。グラフィカルインターフェイスを提供することはデバイスにビューを送信することを含み得る。グラフィカルインターフェイスは、デバイスに、グラフィカルインターフェイスにおいてビューを表示させる態様で送信されてもよい。グラフィカルインターフェイスはデバイスからの要求に応答して提供されてもよい。
【００５５】
グラフィカルインターフェイスは、添付の図面に関連付けて記載されるような追加の情報または１つ以上の追加のグラフィカルインターフェイスを表示するように修正されてもよい。この明細書中に開示されるようなグラフィカルインターフェイスとの対話に応答して、更新済みのグラフィカルインターフェイスまたは新しいグラフィカルインターフェイスについての情報を生成するための処理を実行することができ、更新済みのグラフィカルインターフェイス／新しいグラフィカルインターフェイスを作成することができる。
【００５６】
この開示においては、「要素」がグラフィカルインターフェイスに含まれていてもよい。グラフィカルインターフェイスは入力を受取るように対話型であってもよい。この入力は、グラフィカルインターフェイスに提供される調整、移動またはデータなどの対話に対応し得る。グラフィカルインターフェイスは、ビューとの対話、またはグラフィカルインターフェイスにおいて表示されるビューを調整するかまたは移動させるための対話についての入力を受信するように対話型であってもよい。要素は表示可能であってもよく、および／またはグラフィカルインターフェイスの一部であってもよい。要素の例は、音声、視覚、触覚またはそれらの組合せによって感知することができるインターフェイスの一部であり得る制御、ボタン、ナビゲーションバーまたは他の視覚的構成要素を含むがこれらに限定されない。要素は入力を受信することができる。たとえば、対話型要素は入力を受信するように対話する要素であってもよい。対話型要素は、グラフィカルインターフェイスとの対話を可能にするための入力を受信し得る。たとえば、対話型要素はグラフィカルインターフェイスにおける多くの要素のうちの１つであってもよい。この明細書中に開示されるグラフィカルインターフェイスのうちのいずれかを表示するコンピュータシステムの場合、コンピュータシステムは、グラフィカルインターフェイスとの対話に対応する１つ以上の入力を受信することができる。当該入力を処理することでグラフィカルインターフェイスに対する対話を決定することができる。
【００５７】
グラフィカルインターフェイス内の内容のビューの表示は、デバイスにおけるディスプレイのサイズに基づき得る。ビューは、ディスプレイのサイズに対応するサイズを有していてもよい。ディスプレイ（たとえば、スクリーン）のサイズ（たとえば、スクリーン次元）は、内容が表示されるべきであるデバイスにおけるディスプレイの表示領域における次元に対応し得る。ディスプレイは、内容のビューがレンダリングされている表示装置または表示領域に対応していてもよい。サイズは、デバイスまたは第三者システムから取得されてもよい。いくつかの実施形態においては、サイズは、インターフェイスにおいて見ることができる視認可能区域に基づいて決定されてもよい。サイズはディスプレイの次元未満であってもよい。サイズは、内容を表示するために用いられるグラフィカルインターフェイスに基づいていてもよい。サイズは、要求時に視認可能な区域に基づいて変化し得る。いくつかの実施形態においては、サイズは、クライアントにおいて決定されて表示管理システム１５０に送信されてもよい。サイズは、ディスプレイのために利用可能な面積に基づいてクライアントによって異なっていてもよい。
【００５８】
サイズは、ドキュメント内の内容に対応するデータが表示可能である区域よりも小さい区域に対応していてもよい。結果として、ビューは、表示するべき内容に対応するデータおよびデータに関する表示すべきヘッダのうちのいくつかに制限される可能性がある。ビューは、内容に対応するデータの一部分（たとえば、第１の部分）をレンダリングしてもよく、この場合、ビュー内のデータの部分に対応するヘッダを有する部分がレンダリングされている。たとえば、当該一部分は、第１のビューに第１のヘッダおよび第２のヘッダを含み得る。第１のヘッダおよび第２のヘッダはそれぞれ行ヘッダおよび列ヘッダであってもよく、逆の場合もまた同様である。第１のビューは、データの第１の部分が第１のヘッダの第１の次元および第２のヘッダの第２の次元に基づいて表示されている第１のデータ本体を含み得る。
【００５９】
ビューを提示するグラフィカルインターフェイスは、グラフィカルインターフェイスとの対話に対応する入力を受信するように対話型であってもよい。対話は、ビューの調整または移動を可能にし得る。異なるビューが入力に基づいて生成されてもよい。たとえば、内容の第１のビューが提供されてもよい。第１のビューは、ディスプレイ上にデータの一部分を表示してもよい。当該一部分は、内容に対応するデータの全てまたはいくらかを含んでいてもよい。ビューによって表示される部分は、ディスプレイのサイズに基づいていてもよい。ディスプレイは表示装置のスクリーンよりも小さくてもよい。ヘッダは、示されるデータの部分に基づいてビューにおいて表示されてもよい。ヘッダの全てまたは一部分がサイズに基づいて示されてもよい。データは、当該データが満たしているヘッダに対応して表示され得る。データは、セルに表示されてもよく、当該セルの境界は視認可能であってもよくまたは視認不可能であってもよい。データに対応するヘッダはビューにあるデータに基づいて表示されてもよい。内容に対応するデータは、ヘッダについてのデータ（たとえば、ラベル）を含み得る。ヘッダに対応するデータはセルにおいて表示されてもよい。セルは視認可能であってもよくまたは視認不可能であってもよい。ヘッダに対応するデータはヘッダの各次元に対応していてもよい。
【００６０】
ステップ３０８において、グラフィカルインターフェイスとの対話に対応する入力が監視され得る。当該入力は、グラフィカルインターフェイスにおけるビュー（たとえば、第１のビュー）の調整に対応するイベントを検出するように監視され得る。当該イベントは、ビューにおける入力または変更などのイベントを検出するように構成された命令（たとえば、イベントリスナー）またはコードに基づいて決定されてもよい。イベントは、インターフェイス（たとえば、グラフィカルインターフェイス）を介して受信される入力に対応し得る。当該入力は、インターフェイスにおける対話型要素（たとえば、スクロールバー）との対話に対応していてもよい。たとえば、対話はグラフィカルインターフェイスにおける要素の移動に対応していてもよい。この移動は、垂直方向への第１のビューの調整をもたらし得る。変化した第１のヘッダは行ヘッダであってもよく、第２のヘッダは静的な列ヘッダである。別の例においては、対話はグラフィカルインターフェイスにおける要素の移動に対応する。当該移動は水平方向への第１のビューの調整をもたらし得る。変化した第１のヘッダは列ヘッダであってもよく、第２のヘッダは静的な行ヘッダであってもよい。対話は、ドキュメントにおける内容に対応するデータのうち異なる部分を見るためにビューを異なるビューに変更するためのビューの調整であってもよい。この異なる部分は、その時点でディスプレイ上にあるビューにおける部分のうちのいくらかを含んでいてもよい。当該入力は、第１のビューのうち一部分が第１のビューへの調整のためにグラフィカルインターフェイスにおいて視認不可能であることを判断するために監視されてもよい。この視認不可能な部分は、ヘッダ、および／または、ヘッダによって表現される属性に対応するデータ、のうちのいずれかを含み得る。
【００６１】
ステップ３１０において、グラフィカルインターフェイスへの入力を監視することによって検出される第１のビューへの調整に基づいて、第１のビューのうちのヘッダを含む一部分が、第１のビューへの調整のためにグラフィカルインターフェイスにおいて視認不可能であるという判断がなされる。第１のビューの調整は、データおよび／またはヘッダに対する変更を判断するために処理されてもよい。いくつかの実施形態においては、コードまたは命令は、第１のビューのレイアウトにおけるセクションの移動を追跡するための対話を監視するように実現されてもよい。
【００６２】
ビュー（たとえば、現在のビュー）の一部分は、ディスプレイ上の第１のビューの調整に対応するイベントに基づいてディスプレイ上で視認不可能なものとして検出され得る。ビューのうち視認不可能なものとして検出される部分は、１つ以上のヘッダ、ビュー内のデータの当該部分またはそれらの組合せに対応し得る。たとえば、ビューのうちディスプレイ上で視認不可能なものとして検出される部分は、データを全て表示することができるビューよりも小さい表示サイズに起因する可能性がある。イベントの結果、ヘッダの一部分、ビュー内のデータまたはそれらの組合せは視認不可能となり得る。
【００６３】
いくつかの実施形態においては、ビューの当該部分は、列ヘッダの左側の位置を監視することに基づいて視認不可能なものとして検出され、行ヘッダテーブルの最上部が更新される。高さまたは幅がヘッダのサイズ（たとえば、列ヘッダの高さまたは行ヘッダの幅）と同じであると判断されると、ビューは修正も更新もされない。しかしながら、高さまたは幅がヘッダのサイズ（たとえば列ヘッダの高さまたは行ヘッダの幅）よりも大きいと判断されると、ビューはイベントに基づいて修正または更新され得る。ビューの調整に基づいたコーナーの位置は、ヘッダ、およびヘッダに対応するデータ本体の位置を決定するために用いられてもよい。たとえば、コーナーの位置は、ビューのサイズがヘッダテーブルサイズよりも小さい場合、同様に更新されてもよい。
【００６４】
ステップ３１２において、上記検出に基づいて、デバイスにおける電子ドキュメントの第２のビューが生成されてもよい。第２のビューは、内容に対応するデータの第２の部分を表示してもよく、第２の部分は検出された部分に基づいて決定される。第２のビューは、データの第２の部分が表示されている第２のデータ本体を含み得る。第２の部分は、データの第１の部分のうちのいくらかを含み得る。第２の部分は、第１のビューのうち検出された部分に基づいて第１のヘッダに対応する変更として表示されてもよい。第２のビューは、第１のビューにおいてレンダリングされるとおりに第２のヘッダを表示してもよい。
【００６５】
ディスプレイ上の電子ドキュメント内における内容の更新済みのビュー（たとえば第２のビュー）が生成され得る。更新済みのビューは、新しく生成されたビューであってもよく、または、ステップ３０６においてグラフィカルインターフェイスにおいて提供されるビューに基づいて更新されるビューであってもよい。この明細書中に開示される技術は、電子ドキュメントの複数のビューが１つ以上のイベント（たとえば、ビューの調整）に基づいて生成されることを可能にする。ビューは、ディスプレイ上のデータの一部分（たとえば、第２の部分）として生成されてもよい。当該一部分は、イベントよりも前のビュー内のデータの部分とは異なっている可能性がある。当該一部分は、データのうちのいくらかを含んでもよい。第２の部分は、検出された部分に従った第１の部分の修正に基づいて決定されてもよい。一例においては、第２の部分は、検出された部分に基づいて第１のヘッダに対応する変更として表示されてもよく、第２のヘッダへの変更が提示されていなくてもよい。第１のヘッダに対応する変更は、検出された部分に基づいた第１のヘッダ、データまたはそれらの組合せに対応する変更に基づいていてもよい。第２の部分には、第１のビューうちの検出された部分に基づいて第１のヘッダに対応する変更についての修正済みの第１のヘッダが提示されてもよい。第２のビュー内における修正済みの第１のヘッダは、データのうち第２の部分についての第１の次元を表していてもよい。
【００６６】
いくつかの実施形態においては、第２のビューは、第１のビューの更新として生成されてもよい。第１のビューの調整は、データおよび／またはヘッダに対する変更を決定するために処理されてもよい。いくつかの実施形態においては、内容に対応するヘッダおよびデータの位置または所在地は、ドキュメントのメタデータを分析することによって識別されてもよい。ドキュメントは、当該位置を決定するために用いることができるレイアウトを含んでもよく、または当該レイアウトに関連付けられてもよい。いくつかの実施形態においては、レイアウトにおけるコーナーが、ヘッダおよびデータの相対的位置を決定するために用いられてもよい。検出される調整を用いてコーナーを調整してもよく、これに基づいてヘッダおよびデータが調整されてもよい。いくつかの実施形態においては、第１のビューにあるヘッダおよび／またはデータのうちの一部分は、当該一部分のうちの一部が調整に基づいて第２のビューにおいて視認できなくなるように修正されてもよい。いくつかの実施形態においては、第２のビューにおいて隠されているヘッダおよびデータは、第２のビューのうち視認可能な部分のビューの背後に配置されている。たとえば、データおよびヘッダのうち視認不可能な部分は、変化なかったヘッダの背後に隠されて、スクロール移動を出現させる可能性があるが、この場合、データの次元を把握するために必要なヘッダの外観を変更させることはない。
【００６７】
ステップ３１４において、グラフィカルインターフェイスにおける第１のビューがステップ３１２において生成された第２のビューと置換えらえれてもよい。第２のビューは、ディスプレイ上に提供される第１のビューを置換えるために提供されてもよい。第１のビューは第２のビューと置換えられてもよい。いくつかの実施形態においては、第１のビューが第２のビューに更新されてもよい。イベントに対応する調整を示すために、ビューがリアルタイムで提供されてもよい。グラフィカルインターフェイスは、第１のビューを第２のビューと置換えるために再生成または更新されてもよい。ビューおよび／またはビューを含むグラフィカルインターフェイスがデバイスに提供されてもよい。ビューを提供することにより、グラフィカルインターフェイスが第２のビューを表示するように更新され得る。
【００６８】
少なくとも１つの実施形態においては、内容の表示を管理するためのプロセスが開示される。当該プロセスは、表示装置においてレンダリングするべき内容にアクセスすることを含み得る。当該プロセスは内容のレイアウトを決定することを含み得る。内容のレイアウトに基づいて、複数のセクションを有する電子ドキュメントが生成されてもよい。当該複数の表示セクションのうち１つ以上は内容のデータを含めるように生成されてもよく、この場合、電子ドキュメントは１つ以上のヘッダとともに生成される。ヘッダの各々は、複数の表示セクションのうち別々のセクションに対応していてもよい。表示装置における電子ドキュメント内における内容のレンダリングがなされる。電子ドキュメントをレンダリングするための内容の表示の移動が検出されてもよい。複数のセクションのうち１セクションが、検出される移動に基づいて調整されてもよい。いくつかの実施形態においては、内容の表示の移動を検出することは、電子ドキュメント内の内容の表示の１つ以上の座標を監視することと、当該監視に基づいて、１つ以上のヘッダのうちのあるヘッダに関する内容が移動したと判断することとを含み得る。セクションを調整することは、移動した内容に基づいてセクションの調整を決定することを含み得る。１つ以上のヘッダは列ヘッダまたは行ヘッダを含み得る。
【００６９】
いくつかの実施形態においては、或るビューに対する調整に関する各イベントにそれぞれ対応している複数のビューが生成されてもよい。内容の全ての部分が視認できなくなるまでビューが生成されてもよい。いくつかの実施形態においては、ビューは、第１の内容に対応するデータおよび第２の内容に対応するデータを示すように表示されてもよい。異なる内容の各々は異なるデータおよび異なるヘッダを有し得る。いくつかの実施形態においては、或るビューは、第１の内容のうちの一部分および第２の内容のうちの一部分を含むように生成されてもよい。このプロセスにおいて開示される技術は、複数の内容（たとえばテーブル）に適用可能であってもよく、これら複数の内容の部分が単一のビューに表示され得る。ビューの調整などのイベントを検出することに基づいて、第１の内容および第２の内容のうち一部分を表示するビューが、単一のビューについてこの明細書中に開示されているとおりに調整されてもよい。いくつかの実施形態においては、ビューの調整に基づいて、或るビューに表示される内容の部分は、データではなく１つ以上のヘッダを含み得る。データは、ビューのさらなる調整が行われると視認可能になり得る。
【００７０】
ＩＩＩ．内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイス
図４〜図９は、いくつかの実施形態に従った、内容を表示してヘッダの表示を管理するためのグラフィカルインターフェイスを示す。図４〜図９に示されるグラフィカルインターフェイスの例は、内容の表示を管理するために用いることができるアプリケーション（たとえば、企業業績報告）において提供されてもよい。さまざまなグラフィカルインターフェイスは、ユーザが表示すべき内容を手作業で生成するかまたは自動で生成することを可能にする特徴の例を示している。グラフィカルインターフェイスは、内容を表示するために設計時間、実行時間またはこれら両方の時間中に提供されてもよい。アプリケーションは、ユーザが、データの１つ以上のソースを指定することを可能にし得る。データは、各々のセクションまたは個々のテーブルごとに指定されてもよい。アプリケーションは、内容のレイアウトに基づいた表示のために電子ドキュメントを生成してもよい。内容が図２Ａ〜図２Ｄに記載されるようにレイアウトされてもよい。内容がセクションにまで分解されていることにより、表示管理システム１５０がデータ本体セクションにおけるデータの移動に基づいてヘッダの表示を管理することが可能となり得る。
【００７１】
図４は、電子ドキュメント内の内容を表示するためのレイアウトを決定するために設計時間において提供され得るグラフィカルインターフェイス４００を示す。グラフィカルインターフェイス４００は、内容を表示するとともにレイアウトにおけるセクションを規定するためのレイアウト（たとえば、テーブル）を選択するための１つ以上の要素を含み得る。図５は、グラフィカルインターフェイス４００との対話に基づいて提供されるグラフィカルインターフェイス５００を示す。グラフィカルインターフェイス５００は、セクションに基づいてドキュメント内の内容についてのレイアウトを表示する。各々のセクションは、ドキュメントとしてデータを表示するための属性に対応している。セクションの各々（たとえば、子孫、子供、財政、および収益）は、グラフィカルインターフェイス５００における１つ以上の要素によって構成されてもよい。
【００７２】
図６は、ドキュメントについての内容を表示するためにデータのための１つ以上のデータソースを特定するためのグラフィカルインターフェイス６００を示す。セクションについてのデータを提供するために１つ以上のデータソースが指定されてもよい。これらのセクションは、それらのセクションについての属性によって規定される次元に基づいたレイアウトに対応し得る。図７は、グラフィカルインターフェイス６００との対話に基づいて表示されるグラフィカルインターフェイス７００を示す。グラフィカルインターフェイス７００は、図６に示されるセクションによって規定されるレイアウトを有するテーブル７０２を表示し得る。グラフィカルインターフェイス７００は、セクション同士の間の属性の関係などの、レイアウトについてのセクションの関係を構成するためにグラフィカルインターフェイス７１０を表示するように対話型であってもよい。
【００７３】
図８は、ドキュメント内の内容についてのレイアウトでセクションを構成するためのグラフィカルインターフェイス８００を示す。具体的には、グラフィカルインターフェイス８００は、レイアウトにおけるそれぞれのセクションに対応する属性の順序、関係または配置を構成するための入力を受信するように対話型であってもよい。図９は、ドキュメントについての内容を表示するためのレイアウトのビューをレンダリングするグラフィカルインターフェイス９００を示す。ビューは、内容における次元についての複数の属性を表現するために行ヘッダ（「会計」）および列ヘッダ（「財政カレンダ」）とともにあるはずである。
【００７４】
図１０〜図２１は内容を表示するとともにヘッダの表示を管理するためのグラフィカルインターフェイスを示す。グラフィカルインターフェイスの追加の例が、優先権出願１）２０１６年９月１６日に提出され、「電子ドキュメントにおけるヘッダの表示を管理するための技術（TECHNIQUES FOR MANAGING DISPLAY OF HEADERS IN AN ELECTRONIC DOCUMENT）」と題された米国仮出願第６２／３９６，０６５号、および、２）２０１６年１１月３０日に提出され、「電子ドキュメントにおけるヘッダの表示を管理するための技術（TECHNIQUES FOR MANAGING DISPLAY OF HEADERS IN AN ELECTRONIC DOCUMENT）」と題された米国仮出願第６２／４２８，４７０号において開示されている。図１０〜図２１に例示されている特徴は、機能的な工業デザイン、使用インターフェイスの審美的および装飾的なアスペクトを開示している。具体的には、図の各々における要素のレイアウト、配置および場所と各々のグラフィカルユーザインターフェイス（ＧＵＩ）の全体的外観とは、同様の動作特徴を維持しつつ装飾的、審美的、工業的デザイン、機能的、およびそれらの組合せに基づいて他の形態をとることもできる。たとえば、この明細書中に開示されているそれらの実施形態などのように、ＧＵＩのディスプレイにおける各々のヘッダは陰影、１本以上の線および／または他のタイプの審美的、装飾的もしくは工業的デザインで示すことができる。各々のヘッダは、複数のセクションを識別する１本以上の線を含んでいてもよく、各々のセクションは、ヘッダ内のタイトル／ラベルに対応する列または行などの、そのタイトルまたはラベルに対応するデータについてのタイトルまたはラベルに対応している。テーブルのデータ本体内のデータは、ヘッダ内の異なるタイトル／ラベルに対応する異なるデータを識別するために１本以上の線または他の視覚的外観とともに示されてもよい。これらの線は、データ表示用のテーブルまたは他の設計のために示されてもよい。各々のフィールドまたはセルは、データ本体内のデータの別個のアイテムを示す境界または他の外観で表示されてもよい。ビュー、パターンおよび文字のためにグラフィカルインターフェイスにおいて示される線（たとえば、実線および破線）は、例示だけを目的としたものであって、機能に影響を及ぼすものではない。ディスプレイスクリーン上に示される陰影は、動画化されたグラフィカルユーザインターフェイスのためのデータテーブルヘッダの選択的な移動を示している。図１０〜図２１は、記載および図示された実施形態の機能に影響を及ぼすことなく例示のためだけに示されている。これらの図示が含み得る要素または構成要素はより多くてもよくまたはより少なくてもよい。ディスプレイの外観の変化は例示されているビューを含むグラフィカルインターフェイスの機能に影響を及ぼさない。単一の要素として示されているが、ヘッダは、境界または他の外観によって規定される複数の要素（たとえばセル）を含んでもよく、または、当該複数の要素として現われてもよく、これら複数の要素の各々はデータについての次元の属性に対応している。データ本体において示される各値などのデータは、行ヘッダおよび列ヘッダにおける次元または属性に対応するデータを規定するフィールドまたはセルに対応し��いてもよい。いくつかの実施形態においては、各々のＧＵＩは、「コーナー」などのデータを持たない部分を含んでもよい。テーブル内のヘッダは、データおよび／または他のヘッダの移動に対して相対的にグラフィカルユーザインターフェイスにおいて動画化される設計として例示されてもよい。
【００７５】
図１０〜図１５は垂直スクロールを示している。この場合、各テーブルの最上部におけるヘッダ（たとえば、列ヘッダ）は固定されたままであるが、テーブル内のデータが視認可能である限り視認可能となるように調整される。左側の行ヘッダは、当該行ヘッダのうち一部分についてのデータが視認できなくなるまで、視認可能なままである。グラフィカルインターフェイスは、視認可能なデータに従ってヘッダを表示するようにディスプレイが調整されるように、動画化して表示され得る。具体的には、図１０〜図１５は、ユーザが垂直にスクロールするのに応じて、ヘッダ１２４が図２〜図５のそれぞれの２２４、３２４、４２４および５２４に調整されるとともに、図１２のヘッダ３４４が図１３〜図１５のそれぞれの４４４、５４４および６４４に調整される。ヘッダ１２６および３４６は、これらのヘッダについてのデータ本体が視認できる限り、視認可能なままである。
【００７６】
図１０は、ドキュメント内の内容を表示するためのビュー１０４を含むグラフィカルインターフェイス１０２を示す。ビュー１０４は、ビュー１０４にデータを表示する構造を規定するレイアウト１２０などの１つ以上のレイアウトを含み得る。レイアウト１２０は、コーナー１２２、列ヘッダ１２６、行ヘッダ１２４およびデータ本体１２８などの複数のセクションによって規定されてもよい。単一の要素として示されているが、ヘッダは、境界または他の外観によって規定される複数の要素（たとえばセル）を含み得るかまたは当該複数の要素として現われ得る。これら複数の要素の各々はデータについての次元の属性に対応している。データ本体１２８において示される各値などのデータは、行ヘッダ１２４および列ヘッダ１２６における次元または属性に対応するデータを規定するフィールドまたはセルに対応していてもよい。
【００７７】
グラフィカルインターフェイスは、ビューを調整するための入力を受信するように対話型であってもよい。たとえば、ビューは、要素１０６（たとえば、垂直スクロールバー）および要素１０８（たとえば、水平スクロールバー）を含み得る。各々の要素は、ビュー１０２におけるデータ本体のうちヘッダ１２４および１２６に関する部分を変更するように対話するものであってもよい。データ本体１２８に示される内容は、ドキュメント内の内容のうち一部分を含んでいてもよい。行ヘッダ１２４および列ヘッダ１２６は、データ本体１２８において示されるデータのうちそれらのヘッダ１２４および１２６によって表現される次元の属性を満たす部分に対応して示されてもよい。
【００７８】
図１１は、要素１０６との対話（たとえば、下方にスクロール）に対応する入力に基づいた更新済みのビューまたは新しいビューへのビュー１０４の変更に基づいてレンダリングされるグラフィカルインターフェイス１０２を示す。データ本体１２８は、図１０に示されるデータのうち一部分を含む別のデータを表示するように変化する。ヘッダ１２６は、ヘッダ１２６における次元が垂直スクロールのために変化したデータ本体の各列におけるデータに対応している場合には、固定されたままである。図１０のヘッダ１２４は、データ本体１２８において示されるデータの行に対応する次元を表示するように図１１のヘッダ２２４に変化してもよい。ビュー１０４は、ヘッダ２２４における変化を反映するように更新されてもよく、これにより、データ本体１２８における行のうちの一部分に対応する次元のいくつかの部分を表示する。データ本体１２８は、垂直スクロールに基づいて表示されている行に対応する新しいデータ２２８を表示するように修正されてもよい。行ヘッダ２２４は、列ヘッダ１２６が固定されたままであるときに行が視認可能になるのに応じてこれら行に対応して調整されてもよい。
【００７９】
図１２は、要素１０６との継続的な対話（たとえば、下方へのスクロール）に対応する入力に基づいた更新済みのビューまたは新しいビューへのビュー１０４の変更に基づいてレンダリングされるグラフィカルインターフェイス１０２を示す。データ本体１２８は、図１１に示されるデータの一部分を含む別のデータを表示するように変化する。ヘッダ１２６は、ヘッダ１２６における次元が垂直スクロールのために変化したデータ本体の各列におけるデータに対応している場合には、固定されたままであり得る。図１１のヘッダ２２４は、データ本体３２８において示されるデータの行に対応する次元を表示するように図１１のヘッダ３２４に変化してもよい。ビュー１０４は、ヘッダ２２４における変化を反映するように更新されてもよく、これにより、データ本体１２８における行のうちの一部分に対応する次元のいくつかの部分を表示する。データ本体１２８は、垂直スクロールに基づいて表示されている行に対応する新しいデータ３２８を表示するように修正されてもよい。行ヘッダ３２４は、列ヘッダ１２６が固定されたままであるときに行が視認可能になるのに応じてこれら行に対応して調整されてもよい。
【００８０】
図１２は、ドキュメントについてデータのより多くのセクションを含むレイアウト１２０の別の部分を示す。グラフィカルインターフェイス１０２は、図１１における要素１０６との対話に基づいて図１２に示されるものを表示するように更新されてもよい。ビュー１０４におけるレイアウト１２０は、異なるデータ本体３４８におけるドキュメントについての異なる内容を表示するように更新されてもよい。内容は、コーナー３４２、列ヘッダ３４６、行ヘッダ３４４およびデータ本体３４８などのセクションによって規定される別のテーブル３４０に表示されてもよい。テーブル３４０は、他のテーブルを有する同じビュー１０２において表示されてもよい。ヘッダ３４４は、レイアウト１０２において示されるデータ本体３４８に関するフィールドを表示するように生成されてもよい。ヘッダ３４６は同じままであってもよい。
【００８１】
図１２においては、データ本体３４８は、第１のテーブルについての残存データを示すためにデータ本体４４８に変化する。ヘッダ３４４は、データ本体４４８において示されるデータと一致する属性を示すためにヘッダ４４４に変化する。図１３〜図１５は、図１２に元々示されているデータ本体３４８に関するテーブル３４０内の変化を示す。ユーザが要素１０６をスクロールすると、データ本体は、ヘッダ３４４を図１３〜図１５におけるそれぞれのヘッダ４４４、５４４および６４４に調整しながら、３４８から図１３〜図１５におけるそれぞれの４４８、５４８および６４８に変化させる。列ヘッダ３４６は変化しないままである一方で、列ヘッダ３４４は、それらの次元だけまたはデータ本体３４８におけるそれらの次元についてのデータに対応するそれらの部分だけを示すことによって、スティッキーに表示されるように元の表示から変化する。
【００８２】
図１６〜２１は水平スクロールを示している。この場合、各テーブルの最上部におけるヘッダ（たとえば、行ヘッダ）は固定されたままであるが、テーブル内のデータが視認可能である限り視認できるように調整される。最上部の列ヘッダは、当該列ヘッダのうちの一部分についてのデータが視認不可能になるまで視認可能なままである。グラフィカルインターフェイスは、視認可能なデータに従ってヘッダを表示するようにディスプレイが調整されるように、動画化して表示され得る。図１６は、ドキュメントについて内容のビュー１０４を含むグラフィカルインターフェイス１０２を示す。ビュー１０４は、ビュー１０４におけるデータを表示する構造を規定するレイアウト７２０によって規定されてもよい。レイアウト１２０は、コーナー７２２、列ヘッダ７２６、行ヘッダ７２４およびデータ本体７２８などの複数のセクションによって規定されてもよい。単一の要素として示されているが、ヘッダは、境界または他の外観によって規定される複数の要素（たとえばセル）を含み得るかまたは当該複数の要素として現われ得る。複数の要素の各々はデータについての次元の属性に対応している。データ本体７２８において示される各値などのデータは、行ヘッダ７２４および列ヘッダ７２６における次元または属性に対応するデータを規定するフィールドまたはセルに対応していてもよい。
【００８３】
図１６〜図１９は、図１６のヘッダ７２６が図１７〜図１９のそれぞれの８２６、９２６および１０２６に調整されることを示す。データ本体内のデータに対応する属性を示すように調整されるヘッダはスティッキーであるため、その属性についてのデータに関する適切な属性をヘッダ内に見ることができる。図１６〜図２０においては、ヘッダ７２４は変化しないままである。なぜなら、ヘッダ７２４における属性に対応するデータ本体７２８内のデータが、図１６〜図１９に示される例においては常に視認可能であるからである。ヘッダ７２４は、当該ヘッダについてのデータ本体が視認可能である限り視認可能なままである。図１９〜図２１は、ユーザが要素１０８で水平にスクロールすると、図１９のヘッダ１０４６が図２０の１１４６および図２１の１２４６に調整されることを示している。ヘッダ１０４４は、図１９に示されるデータ本体１０４８に関連付けて示される。ユーザが要素１０８で水平にスクロールすると、ヘッダ１０４４は図２０の１１４４および図２１の１２４４に変化する。図１９〜図２１の例においては、両方のヘッダは、ヘッダにおける属性に対応するデータを示すデータ本体の部分に関してスティッキーとなるように変化してもよい。
【００８４】
ＩＶ．表示管理システムについてのコンピューティング環境
図２２は、一実施形態を実現するための分散型システム２２００を示す簡略図である。図示される実施形態においては、分散型システム２２００は、１つ以上のクライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８を含む。１つ以上のクライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８は、１つ以上のネットワーク２２１０を介してウェブブラウザ、プロプライエタリ・クライアント（たとえばオラクルフォーム）などのクライアントアプリケーションを実行して動作させるように構成されている。サーバ２２１２は、ネットワーク２２１０を介してリモートクライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８と通信可能に連結されていてもよい。
【００８５】
さまざまな実施形態においては、サーバ２２１２は、１つ以上のサービスまたはソフトウェアアプリケーションを実行させるように適合されてもよい。いくつかの実施形態においては、サーバ２２１２はまた、他のサービスを提供してもよく、または、ソフトウェアアプリケーションは非仮想環境および仮想環境を含み得る。いくつかの実施形態においては、これらのサービスは、クライアントコンピューティングデバイス２２０２、２２０４、２２０６および／または２２０８のユーザに対し、ウェブベースのサービスもしくはクラウドサービスとして、またはソフトウェア・アズ・ア・サービス（Software as a Service：ＳａａＳ）モデルの下で提供されてもよい。クライアントコンピューティングデバイス２２０２、２２０４、２２０６および／または２２０８を動作させるユーザは、さらに、これらのコンポーネントによって提供されるサービスを利用するために、１つ以上のクライアントアプリケーションを利用してサーバ２２１２と対話してもよい。
【００８６】
図２２に示される構成においては、システム７００のソフトウェアコンポーネント２２１８、２２２０および２２２２が、サーバ２２１２上において実現されるものとして示されている。他の実施形態においては、システム２２００のコンポーネントのうち１つ以上および／またはこれらのコンポーネントによって提供されるサービスはまた、クライアントコンピューティングデバイス２２０２、２２０４、２２０６および／または２２０８のうち１つ以上によって実現されてもよい。次いで、クライアントコンピューティングデバイスを動作させるユーザは、これらのコンポーネントによって提供されるサービスを用いるために１つ以上のクライアントアプリケーションを利用してもよい。これらのコンポーネントはハードウェア、ファームウェア、ソフトウェアまたはそれらの組合せで実現されてもよい。分散型システム２２００とは異なり得るさまざまな異なるシステム構成が実現可能であることが認識されるはずである。図２２に示される実施形態は、このため、実施形態のシステムを実現するための分散型システムの一例であり、限定するように意図されたものではない。
【００８７】
クライアントコンピューティングデバイス２２０２、２２０４、２２０６および／または２２０８はさまざまなタイプのコンピューティングシステムを含み得る。たとえば、クライアントコンピューティングデバイスは、携帯可能な手持ち式のデバイス（たとえばｉＰｈｏｎｅ（登録商標）、セルラー電話、ｉＰａｄ（登録商標）、コンピューティングタブレット、携帯情報端末（personal digital assistant：ＰＤＡ））またはウェアラブルデバイス（たとえばＧｏｏｇｌｅ  Ｇｌａｓｓ（登録商標）頭部装着型ディスプレイ）を含んでもよく、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）Ｍｏｂｉｌｅなどのソフトウェア、および／もしくは、ｉＯＳ、Ｗｉｎｄｏｗｓ  Ｐｈｏｎｅ、Ａｎｄｒｏｉｄ、ＢｌａｃｋＢｅｒｒｙ  １０、Ｐａｌｍ  ＯＳなどのさまざまなモバイルオペレーティングシステムを実行し得る。デバイスは、さまざまなインターネット関連アプリ、電子メール、ショートメッセージサービス（short message service：ＳＭＳ）アプリケーションなどのさまざまなアプリケーションをサポートしてもよく、さまざまな他の通信プロトコルを使用してもよい。クライアントコンピューティングデバイスは、汎用パーソナルコンピュータも含んでもよく、一例として、Ｍｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ（登録商標）および／またはＬｉｎｕｘ（登録商標）オペレーティングシステムのさまざまなバージョンを実行するパーソナルコンピュータおよび／またはラップトップコンピュータを含む。クライアントコンピューティングデバイスは、たとえばＧｏｏｇｌｅ  Ｃｈｒｏｍｅ  ＯＳなどのさまざまなＧＮＵ／Ｌｉｎｕｘオペレーティングシステムを限定を伴うことなく含む、市場で入手可能なさまざまなＵＮＩＸ（登録商標）またはＵＮＩＸ系のオペレーティングシステムのいずれかを実行するワークステーションコンピュータであり得る。クライアントコンピューティングデバイスは、ネットワーク２２１０を介して通信することができる、シンクライアントコンピュータ、インターネットにより可能化されるゲームシステム（たとえばＫｉｎｅｃｔ（登録商標）ジェスチャ入力デバイス付きまたはＫｉｎｅｃｔ（登録商標）ジェスチャ入力デバイス無しのＭｉｃｒｏｓｏｆｔ  Ｘｂｏｘゲームコンソール）および／または個人メッセージ伝達デバイスなどの電子機器も含んでもよい。
【００８８】
図２２の分散型システム２２００は４つのクライアントコンピューティングデバイスとともに示されているが、いくつのクライアントコンピューティングデバイスがサポートされてもよい。センサを備えたデバイスなどの他のデバイスがサーバ２２１２と対話してもよい。
【００８９】
分散型システム２２００におけるネットワーク２２１０は、伝送制御プロトコル／インターネットプロトコル（transmission control protocol/Internet protocol：ＴＣＰ／ＩＰ）、システムネットワークアーキテクチャ（systems network architecture：ＳＮＡ）、インターネットパケット交換（Internet packet exchange：ＩＰＸ）、ＡｐｐｌｅＴａｌｋなどを限定を伴うことなく含む、さまざまな入手可能なプロトコルのうちのいずれかを用いてデータ通信をサポートすることができる、当業者が精通している任意のタイプのネットワークであってもよい。単に一例として、ネットワーク２２１０は、ローカルエリアネットワーク（local area network：ＬＡＮ）、イーサネット（登録商標）に基づくネットワーク、トークンリング、ワイドエリアネットワーク、インターネット、仮想ネットワーク、仮想プライベートネットワーク（virtual private network：ＶＰＮ）、イントラネット、エクストラネット、公衆交換電話網（public switched telephone network：ＰＳＴＮ）、赤外線ネットワーク、無線ネットワーク（たとえば米国電気電子学会（Institute of Electrical and Electronics：ＩＥＥＥ）８０２．１１のプロトコル一式、Ｂｌｕｅｔｏｏｔｈ（登録商標）、および／もしくはその他の無線プロトコルのうちのいずれかの下で動作するネットワーク）、ならびに／またはこれらの任意の組合せおよび／もしくは他のネットワークであり得る。
【００９０】
サーバ２２１２は、１つ以上の汎用コンピュータ、専用のサーバコンピュータ（一例としてＰＣ（パーソナルコンピュータ）サーバ、ＵＮＩＸ（登録商標）サーバ、ミッドレンジサーバ、メインフレームコンピュータ、ラックマウント型サーバなどを含む）、サーバファーム、サーバクラスタ、またはその他の適切な構成および／もしくは組合わせで構成されてもよい。サーバ２２１２は、仮想オペレーティングシステムを実行する１つ以上の仮想マシン、または仮想化を伴う他のコンピューティングアーキテクチャを含み得る。論理ストレージデバイスの１つ以上のフレキシブルなプールを仮想化してサーバのために仮想ストレージデバイスを維持することができる。仮想ネットワークを、サーバ２２１２によって、ソフトウェア定義のネットワーク接続を用いて制御することができる。さまざまな実施形態において、サーバ２２１２は、前述の開示に記載される１つ以上のサービスまたはソフトウェアアプリケーションを実行するように適合されてもよい。たとえば、サーバ２２１２は、本開示の実施形態に従って上記の処理を実行するためのサーバに対応し得る。
【００９１】
サーバ２２１２は、上記のもののうちのいずれかを含むオペレーティングシステム、および市場で入手可能な任意のサーバオペレーティングシステムを実行してもよい。サーバ２２１２は、ハイパーテキスト転送プロトコル（hypertext transport protocol：ＨＴＴＰ）サーバ、ファイル転送プロトコル（file transfer protocol：ＦＴＰ）サーバ、コモンゲートウェイインターフェイス（common gateway interface：ＣＧＩ）サーバ、ＪＡＶＡ（登録商標）サーバ、データベースサーバなどを含むさまざまな付加的なサーバアプリケーションおよび／または中間層アプリケーションのうちのいずれをも実行し得る。例示的なデータベースサーバは、オラクル、マイクロソフト、サイベース、ＩＢＭ（International Business Machines：インターナショナルビジネスマシンズ）などから市場で入手可能なものを含むが、それらに限定されるものではない。
【００９２】
いくつかの実現例では、サーバ２２１２は、クライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８のユーザから受信されるデータフィードおよび／またはイベント更新情報を解析および整理統合するための１つ以上のアプリケーションを含んでもよい。一例として、データフィードおよび／またはイベント更新情報は、センサデータアプリケーション、金融株式相場表示板、ネットワーク性能計量ツール（たとえばネットワーク監視およびトラフィック管理アプリケーション）、クリックストリーム解析ツール、自動車交通監視などに関連するリアルタイムのイベントを含み得る、１つ以上の第三者情報源および連続データストリームから受信される、Ｔｗｉｔｔｅｒ（登録商標）フィード、Ｆａｃｅｂｏｏｋ（登録商標）更新情報またはリアルタイムの更新情報を含んでもよいが、それらに限定されるものではない。サーバ２２１２は、データフィードおよび／またはリアルタイムのイベントをクライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８の１つ以上の表示デバイスを介して表示するための１つ以上のアプリケーションを含んでもよい。
【００９３】
分散型システム２２００はまた、１つ以上のデータベース２２１４および２２１６を含んでもよい。これらのデータベースは、本開示の実施形態によって使用されるユーザ対話情報、用法パターン情報、適合ルール情報および他の情報などの情報を記憶するためのメカニズムを提供してもよい。データベース２２１４および２２１６は、さまざまな位置にあってもよい。一例として、データベース２２１４および２２１６のうちの１つ以上は、サーバ２２１２に局在する（および／またはサーバ２２１２に常駐する）非一時的な記憶媒体上にあってもよい。代替的には、データベース２２１４および２２１６は、サーバ２２１２から遠隔にあってもよく、ネットワークに基づく接続または専用の接続を介してサーバ２２１２と通信してもよい。一組の実施形態においては、データベース２２１４および２２１６は、ストレージエレアネットワーク（storage-area network：ＳＡＮ）に常駐していてもよい。同様に、サーバ２２１２に帰する機能を実行するための任意の必要なファイルが、適宜、サーバ２２１２上においてローカルに、および／または遠隔で格納されてもよい。一組の実施形態においては、データベース２２１４および２２１６は、ＳＱＬフォーマットされたコマンドに応答してデータを記憶、更新および検索するように適合される、オラクルによって提供されるデータベースなどのリレーショナルデータベースを含んでもよい。
【００９４】
いくつかの実施形態においては、クラウド環境は１つ以上のサービスを提供してもよい。図２３は、本開示の一実施形態に従って、サービスがクラウドサービスとして提供され得るシステム環境２３００のうちの１つ以上のコンポーネントの簡略ブロック図を示す。図２３に例示される実施形態においては、システム環境２３００は、１つ以上のクライアントコンピューティングデバイス２３０４、２３０６および２３０８を含み、１つ以上のクライアントコンピューティングデバイス２３０４、２３０６および２３０８は、クラウドサービスを提供するクラウドインフラストラクチャシステム２３０２と対話するようにユーザによって使用されてもよい。クラウドインフラストラクチャシステム２３０２は、サーバ２２１２のための上記のものを含み得る１つ以上のコンピュータおよび／またはサーバを備えてもよい。
【００９５】
図２３に示されるクラウドインフラストラクチャシステム２３０２は図示されるもの以外のコンポーネントを有してもよいことが理解されるべきである。さらに、図２３に示される実施形態は、開示される一実施形態を組込み得るクラウドインフラストラクチャシステムの一例に過ぎない。他のいくつかの実施形態においては、クラウドインフラストラクチャシステム２３０２は、図に示されるよりも多いコンポーネントもしくは少ないコンポーネントを有してもよく、２つ以上のコンポーネントを組み合わせてもよく、またはコンポーネントの異なる構成もしくは配置を有してもよい。
【００９６】
クライアントコンピューティングデバイス２３０４、２３０６および２３０８は、クライアントコンピューティングデバイス２２０２、２２０４、２２０６および２２０８に関して上記されたものと同様のデバイスであってもよい。クライアントコンピューティングデバイス２３０４、２３０６および２３０８は、ウェブブラウザ、プロプライエタリ・クライアントアプリケーション（たとえばオラクルフォーム）、または他の何らかのアプリケーションなどのクライアントアプリケーションを動作させるように構成されてもよく、当該クライアントアプリケーションは、クラウドインフラストラクチャシステム２３０２と対話して、クラウドインフラストラクチャシステム２３０２によって提供されるサービスを使用するようにクライアントコンピューティングデバイスのユーザによって使用されてもよい。例示的なシステム環境２３００が３つのクライアントコンピューティングデバイスとともに示されているが、いくつの数のクライアントコンピューティングデバイスがサポートされてもよい。センサを備えたデバイスなどの他のデバイスがクラウドインフラストラクチャシステム２３０２と対話してもよい。
【００９７】
ネットワーク２３１０は、クライアントコンピューティングデバイス２３０４、２３０６および２３０８とクラウドインフラストラクチャシステム２３０２との間におけるデータの通信および交換を容易にし得る。各ネットワークは、ネットワーク２３１０について上記されたものを含む、市場で入手可能なさまざまなプロトコルのうちのいずれかを用いてデータ通信をサポートすることができる、当業者が精通している如何なるタイプのネットワークであってもよい。
【００９８】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２によって提供されるサービスは、オンデマンドでクラウドインフラストラクチャシステムのユーザにとって利用可能にされるサービスのホストを含んでもよい。内容の表示を管理することに関連するサービスに加えて、オンラインデータストレージおよびバックアップソリューション、ウェブベースの電子メールサービス、ホストされるオフィススイートおよびドキュメントコラボレーションサービス、データベース処理、管理される技術サポートサービスなどを限定を伴うことなく含む他のさまざまなサービスも提供されてもよい。クラウドインフラストラクチャシステムによって提供されるサービスは、動的にスケーリングしてそのユーザのニーズを満たすことができる。
【００９９】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２によって提供される或るサービスの或る具体的なインスタンス化は、本明細書では「サービスインスタンス」と称され得る。一般に、クラウドサービスプロバイダのシステムからインターネットなどの通信ネットワークを介してユーザに利用可能にされるサービスはいずれも、「クラウドサービス」と称される。典型的には、パブリッククラウド環境においては、クラウドサービスプロバイダのシステムを構成するサーバおよびシステムは、顧客自身のオンプレミスのサーバおよびシステムとは異なる。たとえば、クラウドサービスプロバイダのシステムは、アプリケーションをホストしてもよく、ユーザは、インターネットなどの通信ネットワークを介して、オンデマンドで、アプリケーションをオーダーし使用してもよい。
【０１００】
いくつかの例では、コンピュータネットワーククラウドインフラストラクチャにおけるサービスは、ストレージ、ホストされるデータベース、ホストされるウェブサーバ、ソフトウェアアプリケーション、またはクラウドベンダーによってユーザに提供されるかもしくは当該技術分野において公知であるような他のサービスに対する保護されたコンピュータネットワークアクセスを含んでもよい。たとえば、サービスは、クラウド上のリモートストレージに対するインターネットを介してのパスワード保護されたアクセスを含み得る。別の例として、サービスは、ネットワーク接続された開発者による個人的な使用のために、ウェブサービスベースのホストされたリレーショナルデータベースおよびスクリプト言語ミドルウェアエンジンを含み得る。別の例として、サービスは、クラウドベンダーのウェブサイトにおいてホストされる電子メールソフトウェアアプリケーションに対するアクセスを含み得る。
【０１０１】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２は、セルフサービスの、サブスクリプションベースの、弾性的にスケーラブルで、信頼性があり、高可用性があり、かつセキュリティ上安全な態様で顧客に対して配送されるアプリケーション、ミドルウェア、データベースサービス提供品一式を含んでもよい。このようなクラウドインフラストラクチャシステムの一例は、本譲受人によって提供されるオラクル・パブリック・クラウド（Oracle Public Cloud）である。
【０１０２】
クラウドインフラストラクチャシステム２３０２は、「ビッグデータ」関連の計算および解析ツールも提供し得る。「ビッグデータ」という語は、一般に、大量のデータを視覚化し、傾向を検出し、および／またはその他の態様でデータと対話するようにアナリストおよび研究者によって記憶および操作され得る非常に大きなデータセットを指すのに用いられる。このビッグデータおよび関連のアプリケーションは、インフラストラクチャシステムによって、多数のレベルにおいて、および異なるスケールでホストおよび／または操作され得る。そのようなデータを表示するため、またはデータもしくはデータが表現するものに対する外部の力をシミュレートするために、並列に連結された何十、何百または何千ものプロセッサがそのようなデータに対して作用し得る。これらのデータセットは、データベースにおいてもしくは構造化モデルに従って編成されたような構造化データ、および／または非構造化データ（たとえば電子メール、画像、データブロブ（バイナリラージオブジェクト）、ウェブページ、複合イベント処理）を含み得る。より多くの（またはより少ない）計算リソースを比較的迅速に対象に集中させることができるいくつかの実施形態の機能を活用することによって、クラウドインフラストラクチャシステムは、ビジネス、政府機関、研究組織、私人、同じ考えを持った個人もしくは組織のグループ、または他のエンティティからの要求に基づいて大きなデータセットに対してタスクを実行するために、より適切に利用できるであろう。
【０１０３】
さまざまな実施形態においては、クラウドインフラストラクチャシステム２３０２は、クラウドインフラストラクチャシステム２３０２によって提供されるサービスに対する顧客のサブスクリプションを自動的にプロビジョニングし、管理し、およびトラッキングするように適合されてもよい。クラウドインフラストラクチャシステム２３０２は、クラウドサービスをさまざまな展開モデルを介して提供してもよい。たとえば、サービスは、クラウドインフラストラクチャシステム２３０２が（たとえばオラクル社によって所有される）クラウドサービスを販売する組織によって所有されるとともにサービスが一般大衆またはさまざまな業界企業に対して利用可能にされるパブリッククラウドモデルの下で提供されてもよい。別の例として、サービスは、クラウドインフラストラクチャシステム２３０２が単一の組織に対してのみ稼働され得るとともにその組織内における１つ以上のエンティティに対してサービスを提供し得るプライベートクラウドモデルの下で提供されてもよい。また、クラウドサービスは、クラウドインフラストラクチャシステム２３０２およびクラウドインフラストラクチャシステム２３０２によって提供されるサービスが、関連するコミュニティにおけるいくつかの組織によって共有されているコミュニティクラウドモデルの下で提供されてもよい。また、クラウドサービスは、２つ以上の異なるモデルの組合せであるハイブリッドクラウドモデルの下で提供されてもよい。
【０１０４】
いくつかの実施形態においては、クラウドインフラストラクチャシステム２３０２によって提供されるサービスは、ソフトウェア・アズ・ア・サービス（Software as a Service：ＳａａＳ）カテゴリ、プラットフォーム・アズ・ア・サービス（Platform as a Service：ＰａａＳ）カテゴリ、インフラストラクチャ・アズ・ア・サービス（Infrastructure as a Service：ＩａａＳ）カテゴリ、またはハイブリッドサービスを含む他のサービスのカテゴリの下で提供される１つ以上のサービスを含んでもよい。顧客は、サブスクリプションオーダーを介して、クラウドインフラストラクチャシステム２３０２によって提供される１つ以上のサービスをオーダーしてもよい。クラウドインフラストラクチャシステム２３０２は、次いで、処理を実行して、顧客のサブスクリプションオーダーでサービスを提供する。
【０１０５】
いくつかの実施形態においては、クラウドインフラストラクチャシステム２３０２によって提供されるサービスは、アプリケーションサービス、プラットフォームサービスおよびインフラストラクチャサービスを含み得るが、それらに限定されるものではない。いくつかの例では、アプリケーションサービスは、クラウドインフラストラクチャシステムによってＳａａＳプラットフォームを介して提供されてもよい。ＳａａＳプラットフォームは、ＳａａＳカテゴリに入るクラウドサービスを提供するように構成されてもよい。たとえば、ＳａａＳプラットフォームは、オンデマンドアプリケーション一式を統合された開発および展開プラットフォーム上で構築し配送する機能を提供してもよい。ＳａａＳプラットフォームは、ＳａａＳサービスを提供するための基本的なソフトウェアおよびインフラストラクチャを管理および制御してもよい。ＳａａＳプラットフォームによって提供されるサービスを利用することによって、顧客は、クラウドインフラストラクチャシステム上で実行されるアプリケーションを利用することができる。顧客は、別のライセンスおよびサポートを購入する必要なくアプリケーションサービスを取得することができる。さまざまな異なるＳａａＳサービスが提供されてもよい。その例としては、大きな組織に対する売上実績管理、企業統合、および事業柔軟性に対するソリューションを提供するサービスが挙げられるが、それらに限定されるものではない。
【０１０６】
いくつかの実施形態においては、プラットフォームサービスは、クラウドインフラストラクチャシステム２３０２によってＰａａＳプラットフォームを介して提供されてもよい。ＰａａＳプラットフォームは、ＰａａＳカテゴリに入るクラウドサービスを提供するよう構成されてもよい。プラットフォームサービスの例としては、（オラクルなどの）組織が既存のアプリケーションを共有の共通アーキテクチャにおいて整理統合することを可能にするサービス、およびプラットフォームによって提供される共有のサービスを活用する新たなアプリケーションを構築する機能を挙げることができるが、それらに限定されるものではない。ＰａａＳプラットフォームは、ＰａａＳサービスを提供するための基本的なソフトウェアおよびインフラストラクチャを管理および制御してもよい。顧客は、クラウドインフラストラクチャシステム２３０２によって提供されるＰａａＳサービスを、別のライセンスおよびサポートを購入する必要なく取得することができる。プラットフォームサービスの例としては、オラクル・ジャバ・クラウド・サービス（Oracle Java Cloud Service：ＪＣＳ）、オラクル・データベース・クラウド・サービス（Oracle Database Cloud Service：ＤＢＣＳ）などが挙げられるが、それらに限定されるものではない。
【０１０７】
ＰａａＳプラットフォームによって提供されるサービスを利用することによって、顧客は、クラウドインフラストラクチャシステムによってサポートされるプログラミング言語およびツールを使用することができ、展開されたサービスを制御することもできる。いくつかの実施形態においては、クラウドインフラストラクチャシステムによって提供されるプラットフォームサービスは、データベースクラウドサービス、ミドルウェアクラウドサービス（たとえばオラクル・フュージョン・ミドルウェアサービス）、およびＪａｖａクラウドサービスを含んでもよい。一実施形態においては、データベースクラウドサービスは、組織がデータベースリソースをプールし、顧客にデータベース・アズ・ア・サービス（Database as a Service）をデータベースクラウドの形式で提供することを可能にする共有のサービス展開モデルをサポートしてもよい。ミドルウェアクラウドサービスは、顧客がさまざまなビジネスアプリケーションを開発および展開するためのプラットフォームをクラウドインフラストラクチャシステムにおいて提供してもよく、Ｊａｖａクラウドサービスは、顧客がＪａｖａアプリケーションを展開するためのプラットフォームをクラウドインフラストラクチャシステムにおいて提供してしてもよい。
【０１０８】
さまざまな異なるインフラストラクチャサービスがＩａａＳプラットフォームによってクラウドインフラストラクチャシステムにおいて提供されてもよい。インフラストラクチャサービスは、ストレージ、ネットワーク、ならびにＳａａＳプラットフォームおよびＰａａＳプラットフォームによって提供されるサービスを利用する顧客に対する他の基礎的計算リソースなどの基本的な計算リソースの管理および制御を容易にする。
【０１０９】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２は、クラウドインフラストラクチャシステムの顧客に対してさまざまなサービスを提供するために用いられるリソースを提供するためのインフラストラクチャリソース２３３０も含み得る。一実施形態においては、インフラストラクチャリソース２３３０は、サーバ、ストレージ、ならびにＰａａＳプラットフォームおよびＳａａＳプラットフォームによって提供されるサービスを実行するためのネットワーク接続リソース、ならびに他のリソースなどの、ハードウェアの予め統合され最適化された組合せを含んでもよい。
【０１１０】
いくつかの実施形態においては、クラウドインフラストラクチャシステム２３０２におけるリソースは、複数のユーザによって共有され、要求に従って動的に再割り当てされてもよい。加えて、リソースは、ユーザに対してさまざまな時間ゾーンで割り当てられてもよい。たとえば、クラウドインフラストラクチャシステム２３０２は、第１の時間ゾーンにおける第１のユーザセットがクラウドインフラストラクチャシステムのリソースをある特定の時間の間利用することを可能にし、次いで、異なる時間ゾーンに位置する別のユーザセットに対する同じリソースの再割り当てを可能にし、これにより、リソースの利用を最大化し得る。
【０１１１】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２のさまざまなコンポーネントまたはモジュールによって共有されてクラウドインフラストラクチャシステム２３０２によるサービスのプロビジョニングを可能にするいくつかの内部共有サービス２３３２が提供され得る。これらの内部共有サービスは、セキュリティおよびアイデンティティサービス、統合サービス、企業リポジトリサービス、企業マネージャサービス、ウイルススキャンおよびホワイトリストサービス、高可用性、バックアップおよびリカバリサービス、クラウドサポートを可能にするためのサービス、電子メールサービス、通知サービス、ファイル転送サービスなどを含み得るが、それらに限定されるものではない。
【０１１２】
特定の実施形態においては、クラウドインフラストラクチャシステム２３０２は、クラウドインフラストラクチャシステムにおいてクラウドサービス（たとえばＳａａＳサービス、ＰａａＳサービスおよびＩａａＳサービス）の包括的な管理を提供してもよい。一実施形態においては、クラウド管理機能は、クラウドインフラストラクチャシステム２３０２によって受信される顧客のサブスクリプションをプロビジョニングし、管理し、およびトラッキングする機能などを含んでもよい。
【０１１３】
一実施形態においては、図２３に示されるように、クラウド管理機能は、オーダー管理モジュール２３２０、オーダーオーケストレーションモジュール２３２２、オーダープロビジョニングモジュール２３２４、オーダー管理および監視モジュール２３２６、ならびにアイデンティティ管理モジュール２３２８などの１つ以上のモジュールによって提供されてもよい。これらのモジュールは、１つ以上のコンピュータおよび／もしくはサーバを含んでもよく、またはそれらを用いて提供されてもよく、それらは、汎用コンピュータ、専用のサーバコンピュータ、サーバファーム、サーバクラスタ、または他の如何なる適切な構成および／もしくは組合せであってもよい。
【０１１４】
例示的な動作では、ステップ２３３４において、クライアントコンピューティングデバイス２３０４、２３０６または２３０８などのクライアントデバイスを用いる顧客は、クラウドインフラストラクチャシステム２３０２によって提供される１つ以上のサービスを要求し、クラウドインフラストラクチャシステム２３０２によって提供される１つ以上のサービスに対するサブスクリプションに対するオーダーを行なうことによって、クラウドインフラストラクチャシステム２３０２と対話してもよい。特定の実施形態においては、顧客は、クラウドユーザインターフェイス（User Interface：ＵＩ）（たとえば、クラウドＵＩ２３１２、クラウドＵＩ２３１４および／またはクラウドＵＩ２３１６など）にアクセスし、これらのＵＩを介してブスクリプションオーダーを行なってもよい。顧客がオーダーを行なうことに応答してクラウドインフラストラクチャシステム２３０２によって受信されるオーダー情報は、顧客を識別する情報、およびクラウドインフラストラクチャシステム２３０２によって提供される、その顧客が利用することを意図する１つ以上のサービスを含んでもよい。
【０１１５】
ステップ２３３６において、顧客から受信されたオーダー情報は、オーダーデータベース２３１８に保存されてもよい。これが新たなオーダーである場合には、当該オーダーに対して新たな記録が作成されてもよい。一実施形態においては、オーダーデータベース２３１８は、クラウドインフラストラクチャシステム２３１８によって操作されるいくつかのデータベースのうちの１つであり得るとともに、他のシステム要素と連携して操作され得る。
【０１１６】
ステップ２３３８において、オーダー情報は、オーダー管理モジュール２３２０に転送されてもよく、当該オーダー管理モジュール２３２０は、オーダーの検証、および検証後のそのオーダーの予約などの、オーダーに関連する請求および課金の機能を実行するように構成されてもよい。
【０１１７】
ステップ２３４０において、オーダーに関する情報は、オーダーオーケストレーションモジュール２３２２に伝達されてもよく、当該オーダーオーケストレーションモジュール２３２２は、顧客によってなされたオーダーに対してサービスおよびリソースのプロビジョニングをオーケストレーションするよう構成されている。いくつかの例では、オーダーオーケストレーションモジュール２３２２は、オーダープロビジョニングモジュール２３２４のサービスをプロビジョニングに使用してもよい。特定の実施形態においては、オーダーオーケストレーションモジュール２３２２は、各オーダーに関連付けられるビジネスプロセスの管理を可能にし、ビジネス論理を適用して、オーダーがプロビジョニングに進むべきか否かを判断する。
【０１１８】
図２３に示される実施形態に示されるように、ステップ２３４２において、新たなサブスクリプションに対するオーダーを受信すると、オーダーオーケストレーションモジュール２３２２は、オーダープロビジョニングモジュール２３２４に対して、リソースを割り当てて、サブスクリプションオーダーを満たすのに必要とされるリソースを構成するようにとの要求を送信する。オーダープロビジョニングモジュール２３２４は、顧客によってオーダーされたサービスに対するリソースの割り当てを可能にする。オーダープロビジョニングモジュール２３２４は、クラウドインフラストラクチャシステム２３００によって提供されるクラウドサービスと、要求されたサービスを提供するためのリソースをプロビジョニングするのに用いられる物理的インプリメンテーション層との間にある抽象化レベルを提供する。これにより、サービスおよびリソースが実際にオンザフライでプロビジョニングされるか、または、サービスおよびリソースが予めプロビジョニングされて要求時にのみ割当て／割振りがなされるかなどの、インプリメンテーション詳細からオーダーオーケストレーションモジュール２３２２を分離することができる。
【０１１９】
ステップ２３４４において、サービスおよびリソースがプロビジョニングされると、要求されたサービスが使用できる準備ができた状態であることを示す通知が、加入している顧客に送信され得る。いくつかの例では、顧客が要求されたサービスの使用を開始することを可能にする情報（たとえばリンク）が顧客に送信されてもよい。
【０１２０】
ステップ２３４６において、顧客のサブスクリプションオーダーは、オーダー管理および監視モジュール２３２６によって管理およびトラッキングされ得る。いくつかの例では、オーダー管理および監視モジュール２３２６は、加入したサービスの顧客使用に関する使用統計を収集するように構成され得る。たとえば、統計は、使用されるストレージの量、転送されるデータの量、ユーザの人数、ならびにシステムアップ時間およびシステムダウン時間の量などについて収集されてもよい。
【０１２１】
特定の実施形態においては、クラウドインフラストラクチャシステム２３００はアイデンティティ管理モジュール２３２８を含み得る。アイデンティティ管理モジュール２３２８は、クラウドインフラストラクチャシステム２３００におけるアクセス管理および承認サービスなどのアイデンティティサービスを提供するように構成されている。いくつかの実施形態においては、アイデンティティ管理モジュール２３２８は、クラウドインフラストラクチャシステム２３０２によって提供されるサービスを利用することを望む顧客についての情報を制御してもよい。そのような情報は、そのような顧客のアイデンティティを認証する情報、およびそれらの顧客がさまざまなシステムリソース（たとえばファイル、ディレクトリ、アプリケーション、通信ポート、メモリセグメントなど）に対してどのアクションを実行することが承認されるかを記述する情報を含み得る。アイデンティティ管理モジュール２３２８は、各顧客についての記述的情報と、その記述的情報がどのように誰によってアクセスおよび修正され得るかについての記述的情報との管理も含み得る。
【０１２２】
図２４は、本開示の一実施形態を実現するのに使用され得る例示的なコンピュータシステム２４００を示す。いくつかの実施形態においては、コンピュータシステム２４００は、上記のさまざまなサーバおよびコンピュータシステムのうちのいずれかを実現するために用いられてもよい。図２４に示されるように、コンピュータシステム２４００は、バスサブシステム２４０２を介していくつかの周辺サブシステムと通信する処理ユニット２４０４を含むさまざまなサブシステムを含む。これらの周辺サブシステムは、処理加速ユニット２４０６、Ｉ／Ｏサブシステム２４０８、ストレージサブシステム２４１８および通信サブシステム２４２４を含み得る。ストレージサブシステム２４１８は、有形のコンピュータ読取り可能記憶媒体２４２２およびシステムメモリ２４１０を含んでもよい。
【０１２３】
バスサブシステム２４０２は、コンピュータシステム２４００のさまざまなコンポーネントおよびサブシステムに意図されるように互いに通信させるためのメカニズムを提供する。バスサブシステム２４０２は単一のバスとして概略的に示されているが、バスサブシステムの代替的な実施形態は、複数のバスを利用してもよい。バスサブシステム２４０２は、さまざまなバスアーキテクチャのうちのいずれかを用いるメモリバスまたはメモリコントローラ、周辺バスおよびローカルバスを含むいくつかのタイプのバス構造のうちのいずれかであってもよい。たとえば、そのようなアーキテクチャは、インダストリ・スタンダード・アーキテクチャ（Industry Standard Architecture：ＩＳＡ）バス、マイクロチャネルアーキテクチャ（Micro Channel Architecture：ＭＣＡ）バス、エンハンストＩＳＡ（Enhanced ISA：ＥＩＳＡ）バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション（Video Electronics Standards Association：ＶＥＳＡ）ローカルバス、およびＩＥＥＥ  Ｐ１３８６．１規格に従って製造されるメザニンバスとして実現され得る周辺コンポーネントインターコネクト（Peripheral Component Interconnect：ＰＣＩ）バスなどを含んでもよい。
【０１２４】
処理サブシステム２４０４は、コンピュータシステム２４００の動作を制御し、１つ以上の処理ユニット２４３２，２４３４などを備えてもよい。処理ユニットは、単一コアもしくはマルチコアプロセッサを含む１つ以上のプロセッサ、プロセッサの１つ以上のコア、またはそれらの組合せを含んでもよい。いくつかの実施形態においては、処理サブシステム２４０４は、グラフィックスプロセッサ、デジタル信号プロセッサ（digital signal processor：ＤＳＰ）などの１つ以上の特殊用途コプロセッサを含み得る。いくつかの実施形態においては、処理サブシステム２４０４の処理ユニットの一部または全ては、特定用途向け集積回路（application specific integrated circuit：ＡＳＩＣ）またはフィールドプログラマブルゲートアレイ（field programmable gate array：ＦＰＧＡ）などのカスタマイズされた回路を用いて実現され得る。
【０１２５】
いくつかの実施形態においては、処理サブシステム２４０４における処理ユニットは、システムメモリ２４１０またはコンピュータ読取り可能記憶媒体２４２２に記憶された命令を実行することができる。さまざまな実施形態においては、処理ユニットは、さまざまなプログラムまたはコード命令を実行することができ、複数の同時に実行されるプログラムまたはプロセスを維持することができる。任意の所与のときに、実行されるべきプログラムコードの一部または全ては、システムメモリ２４１０、および／または、場合によっては１つ以上のストレージデバイスを含むコンピュータ読取り可能記憶媒体２４２２に常駐することができる。好適なプログラミングにより、処理サブシステム２４０４は、内容の表示を管理するための上記のさまざまな機能を提供することができる。
【０１２６】
特定の実施形態においては、コンピュータシステム２４００によって実行される処理全体を加速させるように、カスタマイズされた処理を実行するため、または処理サブシステム２４０４によって実行される処理の一部をオフロードするための処理加速ユニット２４０６が設けられてもよい。
【０１２７】
Ｉ／Ｏサブシステム２４０８は、コンピュータシステム２４００に情報を入力するため、および／または、コンピュータシステム２４００からもしくはコンピュータシステム２４００を介して情報を出力するためのデバイスおよびメカニズムを含んでもよい。一般に、「入力デバイス」という語の使用は、コンピュータシステム２４００に情報を入力するための実現可能な全てのタイプのデバイスおよびメカニズムを含むよう意図されている。ユーザインターフェイス入力デバイスは、たとえば、キーボード、マウスまたはトラックボールなどのポインティングデバイス、ディスプレイに組み込まれるタッチパッドまたはタッチスクリーン、スクロールホイール、クリックホイール、ダイアル、ボタン、スイッチ、キーパッド、音声コマンド認識システムを伴う音声入力デバイス、マイクロフォン、および他のタイプの入力デバイスを含んでもよい。ユーザインターフェイス入力デバイスはまた、ユーザが入力デバイスを制御して入力デバイスと対話することを可能にするＭｉｃｒｏｓｏｆｔ  Ｋｉｎｅｃｔ（登録商標）モーションセンサ、Ｍｉｃｒｏｓｏｆｔ  Ｘｂｏｘ（登録商標）３６０ゲームコントローラ、ジェスチャおよび話し言葉コマンドを用いて入力を受信するためのインターフェイスを備えたデバイスなどのモーション感知および／またはジェスチャ認識デバイスも含んでもよい。ユーザインターフェイス入力デバイスは、ユーザから目の活動（たとえば写真を撮っている間および／またはメニュー選択を行なっている間の「まばたき」）を検出し、アイジェスチャを入力デバイス（たとえばＧｏｏｇｌｅ  Ｇｌａｓｓ（登録商標））への入力として変換するＧｏｏｇｌｅ  Ｇｌａｓｓ（登録商標）瞬き検出器などのアイジェスチャ認識デバイスも含んでもよい。また、ユーザインターフェイス入力デバイスは、ユーザが音声コマンドを介して音声認識システム（たとえばＳｉｒｉ（登録商標）ナビゲータ）と対話することを可能にする音声認識感知デバイスを含んでもよい。
【０１２８】
ユーザインターフェイス入力デバイスの他の例としては、三次元（３Ｄ）マウス、ジョイスティックまたはポインティングスティック、ゲームパッドおよびグラフィックタブレット、ならびにスピーカ、デジタルカメラ、デジタルカムコーダ、ポータブルメディアプレーヤ、ウェブカム、画像スキャナ、指紋スキャナ、バーコードリーダ３Ｄスキャナ、３Ｄプリンタ、レーザレンジファインダ、および視線追跡デバイスなどの聴覚／視覚デバイスが挙げられるが、それらに限定されるものではない。また、ユーザインターフェイス入力デバイスは、たとえば、コンピュータ断層撮影、磁気共鳴撮像、ポジションエミッショントモグラフィー、医療超音波検査デバイスなどの医療画像化入力デバイスを含んでもよい。ユーザインターフェイス入力デバイスは、たとえば、ＭＩＤＩキーボード、デジタル楽器などの音声入力デバイスも含んでもよい。
【０１２９】
ユーザインターフェイス出力デバイスは、ディスプレイサブシステム、インジケータライト、または音声出力デバイスなどの非ビジュアルディスプレイなどを含んでもよい。ディスプレイサブシステムは、陰極線管（cathode ray tube：ＣＲＴ）、液晶ディスプレイ（liquid crystal display：ＬＣＤ）またはプラズマディスプレイを使うものなどのフラットパネルデバイス、投影デバイス、タッチスクリーンなどであってもよい。一般に、「出力デバイス」という語の使用は、コンピュータシステム２４００からユーザまたは他のコンピュータに情報を出力するための実現可能な全てのタイプのデバイスおよびメカニズムを含むよう意図されている。たとえば、ユーザインターフェイス出力デバイスは、モニタ、プリンタ、スピーカ、ヘッドフォン、自動車ナビゲーションシステム、プロッタ、音声出力デバイスおよびモデムなどの、テキスト、グラフィックスおよび音声／映像情報を視覚的に伝えるさまざまな表示デバイスを含んでもよいが、それらに限定されるものではない。
【０１３０】
ストレージサブシステム２４１８は、コンピュータシステム２４００によって使用される情報を記憶するためのリポジトリまたはデータストアを提供する。ストレージサブシステム２４１８は、いくつかの実施形態の機能を提供する基本的なプログラミングおよびデータ構造を記憶するための有形の非一時的なコンピュータ読取り可能記憶媒体を提供する。処理サブシステム２４０４によって実行されたときに上記の機能を提供するソフトウェア（プログラム、コードモジュール、命令）がストレージサブシステム２４１８に記憶されてもよい。当該ソフトウェアは、処理サブシステム２４０４の１つ以上の処理ユニットによって実行されてもよい。ストレージサブシステム２４１８は、本発明に従って使用されるデータを記憶するためのリポジトリも備えていてもよい。
【０１３１】
ストレージサブシステム２４１８は、揮発性メモリデバイスおよび不揮発性メモリデバイスを含む１つ以上の非一時的なメモリデバイスを含んでもよい。図２４に示されるように、ストレージサブシステム２４１８は、システムメモリ２４１０と、コンピュータ読取り可能記憶媒体２４２２とを含む。システムメモリ２４１０は、プログラム実行中に命令およびデータを記憶するための揮発性メインランダムアクセスメモリ（random access memory：ＲＡＭ）と、固定命令が記憶される不揮発性リードオンリメモリ（read only memory：ＲＯＭ）またはフラッシュメモリとを含む複数のメモリを含んでもよい。いくつかの実現例では、起動中などにコンピュータシステム２４００内の要素間における情報の転送を助ける基本的なルーティンを含むベーシックインプット／アウトプットシステム（basic input/output system：ＢＩＯＳ）が、典型的には、ＲＯＭに記憶されてもよい。ＲＡＭは、典型的には、処理サブシステム２４０４によって現在動作および実行されているデータおよび／またはプログラムモジュールを含む。いくつかの実現例では、システムメモリ２４１０は、スタティックランダムアクセスメモリ（static random access memory：ＳＲＡＭ）またはダイナミックランダムアクセスメモリ（dynamic random access memory：ＤＲＡＭ）などの複数の異なるタイプのメモリを含んでもよい。
【０１３２】
一例として、限定を伴うことなく、図２４に示されるように、システムメモリ２４１０は、アプリケーションプログラム２４１２を記憶してもよく、当該アプリケーションプログラム２４１２は、クライアントアプリケーション、ウェブブラウザ、中間層アプリケーション、リレーショナルデータベース管理システム（relational database management system：ＲＤＢＭＳ）など、プログラムデータ２４１４およびオペレーティングシステム２４１６を含んでもよい。一例として、オペレーティングシステム２４１６は、さまざまなバージョンのＭｉｃｒｏｓｏｆｔ  Ｗｉｎｄｏｗｓ（登録商標）、Ａｐｐｌｅ  Ｍａｃｉｎｔｏｓｈ（登録商標）および／もしくはＬｉｎｕｘ（登録商標）オペレーティングシステム、市場で入手可能なさまざまなＵＮＩＸ（登録商標）またはＵＮＩＸ系オペレーティングシステム（さまざまなＧＮＵ／Ｌｉｎｕｘオペレーティングシステム、Ｇｏｏｇｌｅ  Ｃｈｒｏｍｅ（登録商標）ＯＳなどを含むがそれらに限定されない）、ならびに／または、ｉＯＳ、Ｗｉｎｄｏｗｓ（登録商標）Ｐｈｏｎｅ、Ａｎｄｒｏｉｄ（登録商標）ＯＳ、ＢｌａｃｋＢｅｒｒｙ（登録商標）１０  ＯＳ、およびＰａｌｍ（登録商標）ＯＳオペレーティングシステムを含んでもよい。
【０１３３】
コンピュータ読取り可能記憶媒体２４２２は、いくつかの実施形態の機能を提供するプログラミングおよびデータ構造を記憶してもよい。処理サブシステム２４０４によって実行されたときにプロセッサに上記の機能を提供させるソフトウェア（プログラム、コードモジュール、命令）は、ストレージサブシステム２４１８に記憶されてもよい。一例として、コンピュータ読取り可能記憶媒体２４２２は、ハードディスクドライブ、磁気ディスクドライブ、ＣＤ  ＲＯＭ、ＤＶＤ、ブルーレイ（登録商標）ディスクなどの光ディスクドライブ、または他の光学式媒体などの不揮発性メモリを含んでもよい。コンピュータ読取り可能記憶媒体２４２２は、Ｚｉｐ（登録商標）ドライブ、フラッシュメモリカード、ユニバーサルシリアルバス（universal serial bus：ＵＳＢ）フラッシュドライブ、セキュアデジタル（secure digital：ＳＤ）カード、ＤＶＤディスク、デジタルビデオテープなどを含んでもよいが、それらに限定されるものではない。コンピュータ読取り可能記憶媒体２４２２は、フラッシュメモリベースのＳＳＤ、エンタープライズフラッシュドライブ、ソリッドステートＲＯＭなどの不揮発性メモリに基づくソリッドステートドライブ（solid-state drive：ＳＳＤ）、ソリッドステートＲＡＭ、ダイナミックＲＡＭ、スタティックＲＡＭ、ＤＲＡＭベースのＳＳＤ、磁気抵抗ＲＡＭ（magnetoresistive RAM：ＭＲＡＭ）ＳＳＤなどの揮発性メモリに基づくＳＳＤ、およびＤＲＡＭとフラッシュメモリベースのＳＳＤとの組合せを使用するハイブリッドＳＳＤを含んでもよい。コンピュータ読取り可能媒体２４２２は、コンピュータ読取り可能な命令、データ構造、プログラムモジュールおよび他のデータのストレージをコンピュータシステム２４００に提供してもよい。
【０１３４】
特定の実施形態においては、ストレージサブシステム２４００は、コンピュータ読取り可能記憶媒体２４２２にさらに接続可能なコンピュータ読取り可能記憶媒体リーダ２４２０を含んでもよい。システムメモリ２４１０とともに、およびオプションとしてシステムメモリ２４１０との組合せで、コンピュータ読取り可能記憶媒体２４２２は、コンピュータ読取り可能な情報を記憶するための、遠隔の、ローカルな、固定された、および／またはリムーバブルなストレージデバイスに記憶媒体を加えたものを包括的に表わしてもよい。
【０１３５】
特定の実施形態においては、コンピュータシステム２４００は、１つ以上の仮想マシンを実行するためのサポートを提供してもよい。コンピュータシステム２４００は、仮想マシンの構成および管理を容易にするためのハイパーバイザなどのプログラムを実行してもよい。各仮想マシンは、割り当てられたメモリ、計算（たとえばプロセッサ、コア）、Ｉ／Ｏおよびネットワーク接続リソースであってもよい。各仮想マシンは、典型的には、それ自体のオペレーティングシステムを実行し、当該オペレーティングシステムは、コンピュータシステム２４００によって実行される他の仮想マシンによって実行されるオペレーティングシステムと同一であってもよく、または異なっていてもよい。したがって、場合によっては、複数のオペレーティングシステムがコンピュータシステム２４００によって同時に実行されてもよい。各仮想マシンは、一般に、他の仮想マシンから独立して実行される。
【０１３６】
通信サブシステム２４２４は、他のコンピュータシステムおよびネットワークへのインターフェイスを提供する。通信サブシステム２４２４は、コンピュータシステム２４００から他のシステムへのデータの送受のためのインターフェイスとして機能する。たとえば、通信サブシステム２４２４は、コンピュータシステム２４００が１つ以上のクライアントコンピューティングデバイスとの情報の送受のためにインターネットを介して当該１つ以上のクライアントコンピューティングデバイスへの通信チャネルを確立することを可能にし得る。
【０１３７】
通信サブシステム２４２４は、有線通信プロトコルおよび／または無線通信プロトコルをサポートしてもよい。たとえば、特定の実施形態においては、通信サブシステム２４２４は、（たとえばセルラー電話技術、３Ｇ、４ＧもしくはＥＤＧＥ（グローバル進化のための高速データレート）などの先進データネットワーク技術、ＷｉＦｉ（ＩＥＥＥ８０２．１１ファミリー規格、もしくは他のモバイル通信技術、またはそれらの任意の組合せを用いて）無線音声および／またはデータネットワークにアクセスするための無線周波数（radio frequency：ＲＦ）送受信機コンポーネント、グローバルポジショニングシステム（global positioning system：ＧＰＳ）受信機コンポーネント、ならびに／または、他のコンポーネントを含んでもよい。いくつかの実施形態においては、通信サブシステム２４２４は、無線インターフェイスに加えて、またはその代わりに、有線ネットワーク接続（たとえばイーサネット）を提供することができる。
【０１３８】
通信サブシステム２４２４は、さまざまな形式でデータを送受信することができる。たとえば、いくつかの実施形態においては、通信サブシステム２４２４は、構造化されたおよび／または構造化されていないデータフィード２４２６、イベントストリーム２４２８、イベント更新情報２４３０などの形式で入力通信を受信してもよい。たとえば、通信サブシステム２４２４は、ソーシャルメディアネットワークならびに／または他の通信サービス（たとえば、Ｔｗｉｔｔｅｒ（登録商標）フィード、Ｆａｃｅｂｏｏｋ（登録商標）更新情報、Ｒｉｃｈ  Ｓｉｔｅ  Ｓｕｍｍａｒｙ（ＲＳＳ）フィードなどのウェブフィード、および／もしくは１つ以上の第三者情報源からのリアルタイム更新情報など）のユーザからリアルタイムでデータフィード２４２６を受信（または送信）するように構成されてもよい。
【０１３９】
特定の実施形態においては、通信サブシステム２４２４は、連続データストリームの形式でデータを受信するよう構成されてもよく、当該連続データストリームは、明示的な端部を有さない本質的に連続的または無限であり得る、リアルタイムイベントのイベントストリーム２４２８および／またはイベント更新情報２４３０を含んでもよい。連続データを生成するアプリケーションの例としては、たとえば、センサデータアプリケーション、金融株式相場表示板、ネットワーク性能測定ツール（たとえばネットワーク監視およびトラフィック管理アプリケーション）、クリックストリーム解析ツール、自動車交通監視などを挙げることができる。
【０１４０】
また、通信サブシステム２４２４は、構造化されたおよび／または構造化されていないデータフィード２４２６、イベントストリーム２４２８、イベント更新情報２４３０などを、コンピュータシステム２４００に結合される１つ以上のストリーミングデータソースコンピュータと通信し得る１つ以上のデータベースに出力するよう構成されてもよい。
【０１４１】
コンピュータシステム２４００は、手持ち式の携帯デバイス（たとえばｉＰｈｏｎｅ（登録商標）携帯電話、ｉＰａｄ（登録商標）コンピューティングタブレット、ＰＤＡ）、ウェアラブルデバイス（たとえばＧｏｏｇｌｅ  Ｇｌａｓｓ（登録商標）頭部装着型ディスプレイ）、パーソナルコンピュータ、ワークステーション、メインフレーム、キオスク、サーバラック、または他のいずれかのデータ処理システムを含む、さまざまなタイプのもののうちの１つであり得る。
【０１４２】
コンピュータおよびネットワークが常に変化する性質を有しているため、図２４に示されるコンピュータシステム２４００の記載は、単に具体的な例として意図される。図２４に示されるシステムよりも多いかまたは少ないコンポーネントを有する多くの他の構成が実現可能である。本明細書において提供されている開示および教示に基づいて、当業者は、さまざまな実施形態を実現するための他の態様および／または方法を理解するであろう。
【０１４３】
本開示の具体的な実施形態について説明してきたが、さまざまな変形例、変更例、代替的な構成および同等例も本開示の範囲内に包含される。これら変形例も本開示の範囲内に包含される。本発明の実施形態は、特定の具体的なデータ処理環境内でのオペレーションに限定されるものではなく、複数のデータ処理環境内で自由に機能し得る。加えて、特定の一連のトランザクションおよびステップを用いて本開示の実施形態について説明してきたが、本開示の範囲が、記載されている一連のトランザクションおよびステップに限定されるものではないことが当業者に明らかになるはずである。上記の実施形態のさまざまな特徴および局面は、個々にまたは一緒に使用されてもよい。
【０１４４】
さらに、ハードウェアとソフトウェアとの特定の組合せを用いて本開示の実施形態について説明してきたが、ハードウェアとソフトウェアとの他の組合せも本開示の範囲内であることが認識されるはずである。本開示の実施形態のいくつかは、ハードウェアのみで実現されてもよく、またはソフトウェアのみで実現されてもよく、またはそれらの組合せを用いて実現されてもよい。本明細書に記載されているさまざまなプロセスは、任意の組合せで同一のプロセッサまたは異なるプロセッサ上で実現され得る。したがって、コンポーネントまたはモジュールが特定のオペレーションを実行するよう構成されるものとして記載されている場合、このような構成は、たとえばオペレーションを実行するように電子回路を設計することによって、オペレーションを実行するように（マイクロプロセッサなどの）プログラム可能な電子回路をプログラミングすることによって、またはそれらの任意の組合せによって、達成されることができる。プロセスは、従来のプロセス間通信技術を含むがそれに限定されないさまざまな技術を用いて通信することができ、プロセスの異なる対は、異なる技術を使用してもよく、またはプロセスの同一の対は、異なる時に異なる技術を使用してもよい。
【０１４５】
したがって、明細書および図面は、限定的な意味ではなく例示的な意味で考えられるべきである。しかしながら、特許請求の範囲に記載されているより広範な精神および範囲から逸脱することなく、追加、削減、削除、ならびに他の変形および変更がそれに対してなされてもよいことが明白になるであろう。したがって、具体的な開示実施形態について説明してきたが、これらは限定的であるよう意図されるものではない。さまざまな変形例および同等例は添付の特許請求の範囲内である。
【図１】
2019537083.tif 000003
【図２Ａ】
2019537083.tif 000004
【図２Ｂ】
2019537083.tif 000005
【図２Ｃ】
2019537083.tif 000006
【図２Ｄ】
2019537083.tif 000007
【図３】
2019537083.tif 000008
【図４】
2019537083.tif 000009
【図５】
2019537083.tif 000010
【図６】
2019537083.tif 000011
【図７】
2019537083.tif 000012
【図８】
2019537083.tif 000013
【図９】
2019537083.tif 000014
【図１０】
2019537083.tif 000015
【図１１】
2019537083.tif 000016
【図１２】
2019537083.tif 000017
【図１３】
2019537083.tif 000018
【図１４】
2019537083.tif 000019
【図１５】
2019537083.tif 000020
【図１６】
2019537083.tif 000021
【図１７】
2019537083.tif 000022
【図１８】
2019537083.tif 000023
【図１９】
2019537083.tif 000024
【図２０】
2019537083.tif 000025
【図２１】
2019537083.tif 000026
【図２２】
2019537083.tif 000027
【図２３】
2019537083.tif 000028
【図２４】
2019537083.tif 000029
【国際調査報告】
2019537083.tif 000030
2019537083.tif 000031