(57)【要約】報告書の作成に適したスプレッドシートベースのプログラミング言語を実行するためのコンピュータベースのシステム、ソフトウェア、および、方法であって、前記システムは、プロセッサー、実行可能な命令を行なうように構成されたオペレーティングシステム、およびメモリデバイスを含む随意にネットワーク化されたコンピュータと、報告書作成用のスプレッドシートベースのプログラミング言語を実行する環境を作るために、デジタル処理デバイスによって実行可能な命令を含むコンピュータプログラムとを備え、前記環境が、スプレッドシート内の１つ以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールであって、各データセットへの参照は、セルベースの式によって作成される、ソフトウェアモジュール、手続き関数を解釈するソフトウェアモジュールであって、手続き関数が報告書設計テンプレート内のタグを介して指定される、ソフトウェアモジュール、および、報告書を作成するためのソフトウェアモジュールを含む。【選択図】図１
2015504213.tif 000002
【特許請求の範囲】
【請求項１】
報告書の作成に適したスプレッドシートベースのプログラミング言語を実行するためのコンピュータベースのシステムであって、
前記システムは、
ａ．プロセッサー、実行可能な命令を行なうように構成されたオペレーティングシステム、および、メモリデバイスを含む随意にネットワーク化されたコンピュータと、
ｂ．報告書作成用のスプレッドシートベースのプログラミング言語を実行する環境を作るために、デジタル処理デバイスによって実行可能な命令を含むコンピュータプログラムを備え、
前記環境が、
ｉ．スプレッドシート内の１つ以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールであって、各データセットへの参照は、セルベースの式によって作成される、ソフトウェアモジュール、
ｉｉ．手続き関数を解釈するソフトウェアモジュールであって、手続き関数が報告書設計用テンプレート内のタグを介して指定される、ソフトウェアモジュール、および、
ｉｉｉ．報告書を作成するためのソフトウェアモジュールを含む、
システム。
【請求項２】
１以上の外部のデータセットはデー夕ベースである、請求項１に記載のシステム。
【請求項３】
１以上のデータベースは、リレーショナルデータベース、非リレーショナルデータベース、オブジェクト指向型データベース、オブジェクトデータベース、エンティティ関係モデルデータベース、連想データベース、または、ＸＭＬデータベースを含む、請求項２に記載のシステム。
【請求項４】
１以上の外部のデータセットはテーブル形式のデータセットである、請求項１に記載のシステム。
【請求項５】
１以上のテーブル形式のデータセットは、テーブル形式構造のデータセットを埋め込まれた本来のデータセットを備えた、コンマ区切りのテキストファイル、タブ区切りのテキストファイル、またはバイナリーファイルである、請求項４に記載のシステム。
【請求項６】
１以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールは、記号参照として前記構造を保存する、請求項１に記載のシステム。
【請求項７】
前記ソフトウェアインタープリターは、クエリを実行する前記手続き関数を解釈する、請求項１に記載のシステム。
【請求項８】
前記クエリは、検索およびソートのパラメータの１つまたは両方を随意に含む、請求項７に記載のシステム。
【請求項９】
後に実行するためのクエリを保存するソフトウェアモジュールをさらに含む、請求項７に記載のシステム。
【請求項１０】
それぞれの保存されたクエリは、起動した際にクエリを実行するＵＲＬによって表される、請求項９に記載のシステム。
【請求項１１】
報告書設計用テンプレートはスプレッドシートである、請求項１に記載のシステム。
【請求項１２】
スプレッドシートはマイクロソフトエクセルの任意のバージョン、ＯｐｅｎＯｆｆｉｃｅ  Ｃａｌｃの任意のバージョンおよび派生物、または、Ｌｏｔｕｓ１−２−３の任意のバージョンおよび派生物である、請求項１１に記載のシステム。
【請求項１３】
報告書を作成するためのソフトウェアモジュールは、報告書に報告書設計用テンプレートのプロパティを適用する、請求項１に記載のシステム。
【請求項１４】
報告書を作成するためのソフトウェアモジュールは、１以上のスプレッドシート、ＸＭＬ文書、ＨＴＭＬ文書、報告書作成ソフトウェア文書、ワードプロセッサー文書、またはプレゼンテーションソフトウェア文書の形態をしたバイナリーデータとして報告書を作成する、請求項１に記載のシステム。
【請求項１５】
報告書作成環境を作るためにコンピュータによって実行可能な命令を含むコンピュータプログラムで符号化された、非一時的なコンピュータで読み取り可能な媒体であって、
前記媒体は、
ａ．スプレッドシート内に１以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールであって、各データセットへの参照がセルベースの式によって作成される、ソフトウェアモジュール、
ｂ．手続き関数を解釈するソフトウェアインタープリターであって、手続き関数が報告書設計用テンプレート内のタグによって指定される、ソフトウェアインタープリター、および、
ｃ．報告書を作成するためのソフトウェアモジュールを含む、媒体。
【請求項１６】
報告書を作成するためのソフトウェアモジュールは、報告書に報告書設計用テンプレートのプロパティを適用する、請求項１５に記載の媒体。
【請求項１７】
前記ソフトウェアインタープリターは、クエリを実行するために、前記手続き関数を解釈する、請求項１５に記載の媒体。
【請求項１８】
前記クエリは、検索とソートのパラメータの１つまたは両方を随意に含んでいる、請求項１７に記載の媒体。
【請求項１９】
後に実行するためのクエリを保存するソフトウェアモジュールをさらに含む、請求項１７に記載の媒体。
【請求項２０】
それぞれの保存されたクエリは、起動した際にクエリを実行するＵＲＬによって表される、請求項１９に記載の媒体。
【請求項２１】
コンピュータにより実行される報告書を作成する方法であって、
前記方法は、
ａ．コンピュータ・メモリにスプレッドシート内の１以上の指定された外部のデータセットの構造を保存する工程、
ｂ．コンピュータ・メモリに前記スプレッドシート内のセルベースの式によって各データセットを参照する工程、および、
ｃ．出力をフォーマットするために、ソフトウェアモジュールによって、１つ以上の報告書設計用テンプレートを解釈する工程を含む、方法。
【請求項２２】
出力をフォーマットするために１つ以上の報告書設計用テンプレートを解釈する前記工程が、
ａ．メモリに１つ以上のテンプレートを読み込む工程、
ｂ．プログラミング命令を定義する１つ以上のタグをメモリに読み込む工程、
ｃ．メモリに１以上のデータセットを読み込む工程、
ｄ．新しいスプレッドシートを作成する工程、
ｅ．新しいスプレッドシートにテンプレートのプロパティを適用する工程、
ｆ．各データセットに基づいて新しいスプレッドシートに行と列を挿入する工程、
ｇ．定義されたプログラミング命令を実行する工程、および、
ｈ．バイナリーデータ形式で新しいスプレッドシートを出力する工程、を含む、請求項２１に記載の方法。
【請求項２３】
出力は報告書である、請求項２１に記載の方法。
【請求項２４】
報告書は１以上のスプレッドシート、ＸＭＬ文書、ＨＴＭＬ文書、報告書作成ソフトウェア文書、ワードプロセッサー文書、または、プレゼンテーションソフトウェア文書の形をしたバイナリーデータである、請求項２３に記載の方法。
【請求項２５】
報告書作成環境を作るために、コンピュータによって実行可能な命令を含むコンピュータプログラムで符号化された、非一時的なコンピュータで読み取り可能な媒体であって、
前記媒体は、
ａ．スプレッドシート内のセルベースの式によって１以上のデータセットを参照するためのソフトウェアモジュールと、
ｂ．出力をフォーマットするために１以上の報告書設計用テンプレートを解釈するためのソフトウェアモジュールを含み、手続き関数はタグによって報告書設計用テンプレート中で指定される、媒体。
【請求項２６】
セルベースの式は、ユーザによってある程度は入力される、請求項２５に記載の媒体。
【請求項２７】
セルベースの式は、自動生成ウィザードを介してコンピューターシステムによって、ある程度は入力される、請求項２５に記載の媒体。
【請求項２８】
手続き関数はユーザによってある程度まで入力される、請求項２５に記載の媒体。
【請求項２９】
手続き関数は、自動生成ウィザードを介してコンピュータによってある程度まで入力される、請求項２５に記載の媒体。
【請求項３０】
出力は報告書である、請求項２５に記載の媒体。
【請求項３１】
報告書作成のためのプログラミング命令を特定するためのコンピュータにより実行される方法であって、
前記方法は、以下からなる群：
ａ．入力を指定する、
ｂ．出力を指定する、
ｃ．数学的な計算を指定する、
ｄ．条件付きの実行命令を指定する、および、
ｅ．命令の反復を指定する；
から選択されたプログラミング命令を特定するために、コンピュータ・メモリ内のスプレッドシートに特定のタグを保存する工程を含む、方法。
【請求項３２】
１以上のタグは、オープンタグとクローズタグからなる１対のタグで利用される、請求項３１に記載の方法。
【請求項３３】
１以上のタグは単一タグとして利用される、請求項３１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
（関連出願への相互参照）
本出願は、２０１１年１月２９日に出願された米国仮特許出願第６１／２９３，６０２号の利益を主張し、その全体は引用によって本明細書に組み込まれる。
【背景技術】
【０００２】
既存の企業を報告書作成ツールは、第三者の用途および開発環境における設計プロセス全体にわたってユーザが関与することを必要とする。ユーザは、報告書を作成するために、ある程度のソフトウェア開発の当業者でなければならない。開発完了後、既存の流通手段は限られている。ある組織が任意の第三者の報告書作成ツール（例えば、Ｃｒｙｓｔａｌ  Ｒｅｐｏｒｔｓ）を採用した場合、管理者は、報告書へのアクセスとデータベースへのオープンダイレクトアクセスを有する各々の個々のコンピュータにソフトウェアをインストールしなければならない。これは、潜在的にはアプリケーションの地理的な位置を制限し、潜在的にはセキュリティの違反のチャンスを作り出す。
【発明の概要】
【発明が解決しようとする課題】
【０００３】
報告書のデザインと報告書自体へのアクセシビリティを向上させる、簡単な企業用の報告書開発プラットフォーム、環境、およびツールに対する長い間感じられ満たされていないニースがある。効果的な企業用の報告書作成ツールは、設計の容易さと簡単で安全な分布を促進する。本明細書で開示される発明は、スプレッドシートの既存の知識を利用し、かつ、その知識ベースを最大限にして、マークアップタグ言語でそれを拡張することによって、ユーザが報告書を設計することを可能にする。システムは、店舗の報告書の階層を表わすために簡単なファイルシステム構造を利用し、ウェブベースのユーザインターフェースによってこれらのオブジェクトを表示する。ユニフォーム・リソース・ロケーター（ＵＲＬ）の配信後、データセットにしっかりとフィルターをかけ、ソートし、フォーマットすることができる。
【課題を解決するための手段】
【０００４】
１つの態様において、報告書の作成に適したスプレッドシートベースのプログラミング言語を実行するためのコンピュータベースのシステムが本明細書で開示され、前記システムは、プロセッサー、実行可能な命令を行なうように構成されたオペレーティングシステム、およびメモリデバイスを含む随意にネットワーク化されたコンピュータと、報告書作成用のスプレッドシートベースのプログラミング言語を実行する環境を作るために、デジタル処理デバイスによって実行可能な命令を含むコンピュータプログラムとを備え、前記環境は、スプレッドシート内の１つ以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールであって、各データセットへの参照は、セルベースの式によって作成される、ソフトウェアモジュール、手続き関数（ｐｒｏｃｅｄｕｒａｌ  ｆｕｎｃｔｉｏｎｓ）を解釈するソフトウェアモジュール（例えば、インタープリター）であって、手続き関数が報告書設計用テンプレート内のタグを介して指定される、ソフトウェアモジュール、および、報告書を作成するためのソフトウェアモジュールを含む。いくつかの実施形態において、１以上の外部のデータセットはデー夕ベースである。様々な実施形態において、１以上のデータベースは、リレーショナルデータベース、非リレーショナルデータベース、オブジェクト指向型データベース、オブジェクトデータベース、エンティティ関係モデルデータベース、連想データベース（ａｓｓｏｃｉａｔｉｖｅ  ｄａｔａｂａｓｅ）、および、ＸＭＬデータベースを含む。いくつかの実施形態において、１以上の外部のデータセットはテーブル形式のデータセットである。さらなる実施形態では、１以上のテーブル形式のデータセットは、テーブル形式構造のデータセットを埋め込まれた本来のデータセットを備えた、コンマ区切りのテキストファイル、タブ区切りのテキストファイル、またはバイナリーファイルである。幾つかの実施形態では、１以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールは、記号参照として構造を保存する。幾つかの実施形態では、ソフトウェアインタープリターは、クエリを実行する前記手続き関数を解釈する。さらなる実施形態では、クエリは、検索およびソートのパラメータの１つまたは両方を随意に含んでいる。幾つかの実施形態では、環境は、後で実行するためのクエリを保存するソフトウェアモジュールをさらに含む。さらなる実施形態では、それぞれの保存されたクエリは、起動した際にクエリを実行するＵＲＬによって表される。幾つかの実施形態において、報告書設計用テンプレートはスプレッドシートである。さらなる実施形態では、スプレッドシートはマイクロソフトエクセルの任意のバージョンである。他の実施形態では、スプレッドシートは、ＯｐｅｎＯｆｆｉｃｅ  Ｃａｌｃの任意のバージョンおよび派生物である。他の実施形態では、スプレッドシートは、Ｌｏｔｕｓ１−２−３の任意のバージョンおよび派生物である。幾つかの実施形態では、報告書を作成するためのソフトウェアモジュールは、報告書に報告書設計用テンプレートのプロパティを適用する。幾つかの実施形態では、報告書を作成するためのソフトウェアモジュールは、１以上のスプレッドシート、ＸＭＬ文書、ＨＴＭＬ文書、報告書作成ソフトウェア文書、ワードプロセッサー文書、またはプレゼンテーションソフトウェア文書の形態をしたバイナリーデータとして報告書を作成する。
【０００５】
別の態様では、報告書作成環境を作るためにコンピュータによって実行可能な命令を含むコンピュータプログラムで符号化されたコンピュータで読み取り可能な媒体が本明細書で開示され、該媒体は、スプレッドシート内に１以上の指定された外部のデータセットの構造を保存するためのソフトウェアモジュールであって、各データセットへの参照がセルベースの式によって作成される、ソフトウェアモジュール、手続き関数を解釈するソフトウェアインタープリターであって、手続き関数が報告書設計用テンプレート内のタグによって指定される、ソフトウェアインタープリター、および、報告書を作成するためのソフトウェアモジュールを含む。幾つかの実施形態では、報告書を作成するためのソフトウェアモジュールは、報告書に報告書設計用テンプレートのプロパティを適用する。幾つかの実施形態では、符号化は永久的なものであるか、実質的に永久的なものであるか、半永久的なものであるか、あるいは、非一時的なものである。幾つかの実施形態では、ソフトウェアインタープリターは、クエリを実行するために、前記手続き関数を解釈する。さらなる実施形態では、クエリは、検索とソートのパラメータの１つまたは両方を随意に含んでいる。幾つかの実施形態では、報告書作成環境はさらに、後で実行するためのクエリを保存するソフトウェアモジュールを含む。さらなる実施形態では、各々の保存されたクエリは、起動した際にクエリを実行するＵＲＬによって表される。
【０００６】
別の態様では、コンピュータにより実行される報告書を作成する方法が本明細書で開示され、該方法は、コンピュータ・メモリに保持されたスプレッドシート内の１以上の指定された外部のデータセットの構造を保存する工程、コンピュータ・メモリに保持された前記スプレッドシート内のセルベースの式によって各データセットを参照する工程、および、出力をフォーマットするために、ソフトウェアモジュールによって、１つ以上の報告書設計用テンプレートを解釈する工程を含む。幾つかの実施形態では、出力をフォーマットするために１つ以上の報告書設計用テンプレートを解釈する工程は、以下の工程を含む：メモリに１つ以上のテンプレートを読み込む工程、プログラミング命令を定義する１つ以上のタグをメモリに読み込む工程、メモリに１以上のデータセットを読み込む工程、新しいスプレッドシートを作成する工程、新しいスプレッドシートにテンプレートのプロパティを適用する工程、各データセットに基づいて新しいスプレッドシートに行と列を挿入する工程、定義されたプログラミング命令を実行する工程、および、バイナリーデータ形式で新しいスプレッドシートを出力する工程。幾つかの実施形態では、出力は報告書である。さらなる実施形態では、報告書は１以上のスプレッドシート、ＸＭＬ文書、ＨＴＭＬ文書、報告書作成ソフトウェア文書、ワードプロセッサー文書、または、プレゼンテーションソフトウェア文書の形をしたバイナリーデータである。
【０００７】
別の態様では、報告書作成環境を作るために、コンピュータによって実行可能な命令を含むコンピュータプログラムで符号化されたコンピュータで読み取り可能な媒体が本明細書に開示され、該媒体は、スプレッドシート内のセルベースの式によって１以上のデータセットを参照するためのソフトウェアモジュールと、出力をフォーマットするために１以上の報告書設計用テンプレートを解釈するためのソフトウェアモジュールを含み、手続き関数はタグによって報告書設計用テンプレート中で指定される。幾つかの実施形態では、セルベースの式は、ユーザによってある程度は入力される。幾つかの実施形態では、セルベースの式は、自動生成ウィザードを介してコンピューターシステムによって、ある程度は入力される。幾つかの実施形態では、手続き関数はユーザによってある程度まで入力される。幾つかの実施形態では、手続き関数は、自動生成ウィザードを介してコンピュータによってある程度まで入力される。幾つかの実施形態では、出力は報告書である。幾つかの実施形態では、符号化は、永久的なものであるか、実質的に永久的なものであるか、半永久的なものであるか、あるいは、非一時的なものである。
【０００８】
別の態様では、報告書作成のためのプログラミング命令を特定するためのコンピュータにより実行される方法が本明細書で開示され、該方法は、以下からなる群：入力を指定する、出力を指定する、数学的な計算を指定する、命令の条件付きの実施を指定する、および、命令の反復を指定する；から選択されたプログラミング命令を特定するために、コンピュータ・メモリ、例えば、不揮発性の非一時的なメモリ内のスプレッドシートに特定のタグを保存する工程を含む。幾つかの実施形態では、１以上のタグは、オープンタグとクローズタグからなる１対のタグで利用される。幾つかの実施形態では、１以上のタグは単一タグとして利用される。
【図面の簡単な説明】
【０００９】
【図１】報告書作成に適したスプレッドシートベースのプログラミング言語を実行するための非限定的なプロセスを示しており、この場合、メタデータ・ワークシートおよび設計用テンプレート・ワークシートがスプレッドシートに保存され、出力がスプレッドシート形態の報告書である、プロセスを示す。
【図２】スプレッドシート式の非限定的な例を示す。
【図３】単純なテンプレートの非限定的な例を示しており、この場合、基本的な顧客データ用のテンプレートを示す。
【図４】インタープリターに外部のデータセットをかけ、タグに従ってプロプライエタリな手続型言語をレンダリングした後の図３のテンプレートの出力の非限定的な例を示す。
【図５】複雑な報告書テンプレートの非限定的な例を示しており、この場合、追加の＜ｄｅｔａｉｌ＞＜／ｄｅｔａｉｌ＞タグで表されたネスト化ループを備えた報告書テンプレートを示す。
【図６】強調された外部のデータセットに対する参照を含む図５のテンプレートの非限定的な例を示す。
【図７】外部のデータセットがインタープリターにポーリングされた後の、図５および６のテンプレートから結果として生まれる報告書の非限定的な例を示す。
【図８】結果として生じる外部のデータセットと繰り返しのためにそれぞれの行挿入に基づいてセルの値を内省および再調整するインタープリターを実証するために、図７から新しく作られた式の非限定的な例を示す。
【図９】メタシートの非限定的な例と、スプレッドシート内の検索とソートのパラメータの定義を示す。
【図１０】外部のデータセットをフィルターにかけてソートするためにＨＴＭＬ形式にレンダリングされた検索とソートのパラメータの非限定的な例を示す。この実施例において、パラメータもクエリマーク（ｑｕｅｒｙ  ｍａｒｋｓ）として保存され、ＵＲＬによって参照可能である。
【図１１】テンプレートの非限定的な例を示しており、この場合、実施例１で示されたスプレッドシート・マークアップ言語を含むテンプレートを示している。
【図１２】実施例１で示された報告書の非限定的な例を示しており、この場合、それぞれのセルに埋め込まれた画像とバーコードを備えた報告書を示す。
【図１３】メタデータシートの非限定的な例を示しており、この場合、実施例５で記載されるようなクロス・データベースクエリを行うために、クロス・データベースクエリエンジンによって出されるまったく異なるクエリのリストを保存するメタデータシートを示す。
【図１４】実施例５に記載されるようなクロス・データベースクエリの構成要素のサブクエリの非限定的な例を示しており、この場合、Ｏｒａｃｌｅを含む多くのまったく異なるデータソースからくるメタデータシートを示す。
【図１５】実施例５に記載されるようなクロス・データベースクエリの構成要素のサブクエリの非限定的な例を示しており、この場合、Ｓａｌｅｓｆｏｒｃｅを含む多くのまったく異なるデータソースからくるメタデータシートを示す。
【図１６】実施例５に記載されるようなクロス・データベースクエリの構成要素のサブクエリの非限定的な例を示しており、この場合、Ｍｏｎｇｏを含む多くのまったく異なるデータソースからくるメタデータシートを示す。
【図１７】実施例５に記載されるようなクロス・データベーステーブルのメタデータシートの非限定的な例を示す。
【図１８】実施例５に記載されるようなクロス・データベースのフィールド選択の非限定的な例を示す。
【発明を実施するための形態】
【００１０】
（様々な定義）
別段指定されない限り、本明細書で用いられる全ての技術的な用語は、本発明が属する技術分野の当業者によって一般に理解されるものと同じ意味を有する。本明細書と添付の請求項で用いられるように、単数形「ａ」、「ａｎ」および「ｔｈｅ」は、文脈が他に明確に指定していない限り、複数の言及を含む。本明細書の「または（ｏｒ）」の任意の参照は、別段指定されない限り、「および／または（ａｎｄ／ｏｒ）」を包含するように意図されている。
【００１１】
本明細書で使用されているように、「データセット」は１セットの行またはレコードを意味する。
【００１２】
本明細書で使用されているように、「ワークシート」は、スプレッドシートプログラムの１枚のページまたはシートを意味する。
【００１３】
本明細書で使用されているように、「行」は、テーブル、ワークシート、スプレッドシート、またはデータベース中の１つの暗黙に構造化されたデータ・レコードを意味する。幾つかの実施形態では、データの行はワークシート中を水平に走る１セットのセルである。
【００１４】
本明細書で使用されているように、「列」は、ワークシート中を垂直に走る１セットのセルを意味する。
【００１５】
本明細書で使用されているように「セル」は、データがテーブル、ワークシート、スプレッドシート、またはデータベースに入力される場所を示す。幾つかの実施形態では、セルは行と列が交差する場所にある。
【００１６】
本明細書で使用されているように、「式」は、値を計算するために使用された数学的な方程式を意味する。
【００１７】
（スプレッドシートベースのプログラミング言語）
幾つかの実施形態では、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法は、スプレッドシートベースのプログラミング言語を作成または利用する。幾つかの実施形態では、スプレッドシートプログラミング言語は、外部のインタープリターがタグと機能を異なるタイプのプログラム機能またはエンティティに抽象化することを可能にする、スプレッドシート内のタグ付けの特定の方法に従う言語である。
【００１８】
幾つかの実施形態では、適切なスプレッドシートは、スプレッドシート内の多くのワークシートからなる。さらなる実施形態では、１つの指定されたワークシートは外部のデータセットと、データセットから検索する手段を表す。別のさらなる実施形態では、必要に応じてメタデータ・ワークシートを参照するテンプレート設計に使用されるスプレッドシート内の追加のワークシートがある。
【００１９】
図１は、スプレッドシートベースのプログラミング言語を実行することにより報告書を作成するための非限定的な典型的なプロセスを描く。図１の典型的なプロセスは、ユーザ入力を収容するためにパラメーターベースのウェブ形式をレンダリングする第１段階を含んでいる。幾つかの実施形態では、システムはスプレッドシート（１０５）をメモリにロードし、内部に包含されていたメタデータ・シート（１００）を内省する。メタデータシートから、システムは、フィルタリングとソートに使用されるそれぞれのフィールドを見つける。さらなる実施形態では、その後、システムは、ソートされる利用可能なフィールドを表示するウェブページ（１１０）をレンダリングする。これらのパラメータは、いったんユーザが報告書作成（１２０）を実行すると、インタープリターにかけられる準備が整う。
【００２０】
図１の典型的なプロセスは、報告書作成の第２段階を含んでおり、これは、段階（Ａ）−（Ｇ）の複数段階式である。
【００２１】
（Ａ）システムは、ユーザの定義したパラメータに基づいて外部のデータセットを取得する。幾つかの実施形態では、システムは、報告書で利用可能なすべてのパラメータを引き込み、クエリー（１３０）の手段を介して外部データソースからデータを抽出する。さらなる実施形態では、クエリは、限定されないが、リレーショナルデータベース、オンラインウェブサービス、ＬＤＡＰデータベース、および、フラットファイルを含む様々な異なるデータソースで実行される。特定の実施形態は、リレーショナル・データベース（例えば、Ｏｒａｃｌｅ）に対するＳＱＬステートメントの実行である。この実施形態では、ＳＱＬステートメントは、インタープリターによってＯｒａｃｌｅ  ＲＤＢＭＳに提出され、ＲＤＢＭＳは、フィルターをかけた結果のセットを返す。これは、ユーザがパラメータページで定義したパラメータ（例えばＨＴＭＬ形式）にソートされる。
【００２２】
（Ｂ）インタープリターがテンプレート・ワークシートをメモリに読み込む。幾つかの実施形態では、システムは、それぞれ利用可能なテンプレート・ワークシートをメモリに読み込む（１４０）。幾つかの実施形態では、１以上のテンプレート・ワークシートは、例えば、メタデータ・ワークシートと同じスプレッドシートの中にある（１０５）。他の実施形態では、１以上のテンプレート・ワークシートは、例えば、別のスプレッドシートにある（１４５）。さらなる実施形態では、それぞれのテンプレート・ワークシートは、限定されないが、ページの方向、印刷様式、ページサイズ、ワークシート名、デフォルトのフォント、背景色、および他の機能を含む多くのプロパティを有している。これらのプロパティは、幾つかの実施形態では、標的の結果として生じたバイナリー出力に適用されるメモリに保存される。
【００２３】
（Ｃ）インタープリターはそれぞれのワークシートを介してすべてのタグを構文解析し、メモリに読み込む。幾つかの実施形態では、インタープリターが各ワークシートを横断するため、インタープリターはスプレッドシート内のすべてのテンプレート・ワークシートのそれぞれのタグを読む（１６０）。さらなる実施形態では、インタープリターはその後、行と列を特定およびマークし、手続き関数が実行されることになる。
【００２４】
（Ｄ）インタープリターは新しい報告書を作成し、テンプレートからの各ワークシートをコピーしてメタデータシートを除く指定された新しい報告書にする。幾つかの実施形態では、インタープリターは、ユーザに送られる結果として作られた報告書の基礎として役立つ新しいスプレッドシートを作成する（１７０）。さらなる実施形態では、システムは、メタデータ・ワークシートを除いて、標的とした報告書の中に１枚の新しいワークシートを作成する。別のさらなる実施形態では、インタープリターは、ソースシートのそれぞれ１つからテンプレートからのすべてのシステムプロパティをコピーし、標的とされた報告書中で新しく作られたワークシートにする。
【００２５】
（Ｅ）インタープリターは、指定されたタグと外部のデータセットの大きさに対して、行および列を挿入する。幾つかの実施形態では、インタープリターは、１枚のワークシート当たりの外部のデータセットの大きさに基づいて、必要とされる行の数を再計算する。例えば、テンプレートは、ループされる行の定義された数が３であり、結果のセットが１０の結果を含んでいる場合、インタープリターは標的されたワークシートに３０行を挿入するだろう。さらなる実施形態では、システムは、標的とされたワークシートに、決められた数の行と列を挿入する。システムが行と列を挿入するため、システムは、オリジナルに対して行番号と列番号を特定するために、メモリへパラメータを作成する。
【００２６】
（Ｆ）インタープリターは、データの行と列が挿入された後に、それぞれのセルを内省する。幾つかの実施形態では、システムはその後、セルが式を有するかどうかを決定するために、セル構文解析プログラムによってそれぞれのセルをスキャンする（１８０）。さらなる実施形態では、セルが式を有している場合、本発明は、１以上の外部のデータセットが参照されたかどうかを確かめるために、セル参照を分解する。別のさらなる実施形態では、１以上の外部のデータセットが参照された場合、データは外部のデータセットからコピーされ、式中のセル値を置換する。他の実施形態では、セル参照が外部のデータセットを参照していなかった場合、セルの行と列は現在の位置に対して再計算される。例えば、参照テンプレートでは、セルＣ５内のもともとの式は潜在的には「＝Ａ５＋Ｂ２」と表わすことができるが、挿入された行の数により、セルＣ１０５内の式は、「＝Ｂ１０５＋Ｂ１０２」の新しい式を必要とする。
【００２７】
（Ｇ）クリーンアップ。幾つかの実施形態では、最後の工程は指定された報告書をクリーンアップすることである。さらなる実施形態では、手続き関数のために参照に使用された、あるいは、外部のデータセットの参照として使用されたマークアップタグが取り除かれる。これにより空のスプレッドシートが残され、外部のデータセットをそれぞれのセルに組み込ませて、指定された反復を行いつつ、それぞれの行セットの位置をマークして指定するために必要なインデックスを構築する。
【００２８】
（外部のデータセット）
幾つかの実施形態では、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法は、１つ以上の指定された外部のデータセットの構造にアクセスし、これを読みこみ、保存する。幾つかの実施形態では、１つのデータセットの構造はアクセスされ、読み込まれ、保存される。他の実施形態では、複数のデータセットの構造が、同時に、ほぼ同時に、または連続して、アクセスされ、読み込まれ、保存される。様々な実施形態では、そのインクリメントを含む、２、３、４、５、６、７、８、９、１０、２０、３０、４０、５０、６０、７０、８０、９０、１００、２００、３００、４００、５００、６００、７００、８００、９００、１０００、２０００の、３０００、４０００または５０００以上データセットの構造がアクセスされ、読み込まれ、保存される。
【００２９】
幾つかの実施形態では、各データセットの構造はスプレッドシート内に保存される。またさらなる実施形態では、各データセットの参照は、スプレッドシートのセルベースの式によって作成される。多くのデータセットが、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法とともに使用するのに適している。非限定的な例として、適切なデータセットはテーブルのデータセットとオブジェクト指向のデータセットを含む。
【００３０】
幾つかの実施形態では、適切なテーブルのデータセットは、Ｏｒａｃｌｅ、マイクロソフトＳＱＬ  Ｓｅｒｖｅｒ、Ｉｎｆｏｒｍｉｘ、Ｓｙｂａｓｅ、および、ＭｙＳＱＬなどのデータベースを含んでいる。他の適切なデータベースは、例えば、ＩＢＭ  ＤＢ２、Ｐｏｓｔｇｒｅｓ、および、ｄＢＡＳＥを含んでいる。幾つかの実施形態では、適切なテーブルのデータセットは、文字で区切ったフラットファイル（例えば、ＣＳＶ、タブ区切りなど）、固定長フラットファイル（例えば、ＣＯＢＯＬ）、バイナリーフラットファイル、およびプロプライエタリなＡＳＣＩＩフラットファイル（例えばＤＢＦ）のなどのフラットファイルを含んでいる。
【００３１】
幾つかの実施形態では、適切なオブジェクト指向データセットは、非限定的な例として、ＸＭＬおよびＪＳＯＮを含む。
【００３２】
適切なデータセットは任意の大きさである。例えば、データセットの大きさは、システムがデータセットをフィルターにかけソートする前の潜在的に何億もの行である。様々な実施形態では、データセットは、非限定的な例として、そのインクリメントを含む、１、１０、１ｘ１０２、１ｘ１０３、１ｘ１０４、１ｘ１０５、１ｘ１０６、１ｘ１０７、１ｘ１０８、１ｘ１０９、１ｘ１０１０、１ｘ１０１１、１ｘ１０１２、１ｘ１０１３、１ｘ１０１４、１ｘ１０１５、１ｘ１０１６、１ｘ１０１７、１ｘ１０１８、１ｘ１０１９、１ｘ１０２０またはそれ以上の行である。
【００３３】
適切なデータセットは様々な位置に存在する。幾つかの実施形態では、データセットは、ローカルデータベースまたはフラットファイルである。さらなる実施形態では、データセットは、本明細書に開示されるソフトウェアと同じメモリまたは記憶装置に存在する。さらなる実施形態では、データセットは、本明細書に開示されるソフトウェアと同じネットワーク（例えば、ＬＡＮまたはＷＡＮ）に存在する。幾つかの実施形態では、データセットはインターネットを通じてアクセス可能である。さらなる実施形態では、データセットは第三者のデータソース（例えば、クラウドプロバイダー）とともに存在する。
【００３４】
（クロス・データベースクエリ機能性）
幾つかの実施形態では、本明細書に開示されるシステム、プラットフォーム、環境、アプリケーション、および方法は、１以上の指定された外部のデータセットの構造にアクセスし、これを読みこみ、保存する。特定のさらなる実施形態では、１つ以上の外部のデータセットは、任意のデータベース保存機構を維持しない「メモリ内」データベース中で保持される。幾つかの実施形態では、システムは、メタデータオブジェクト内にクエリの完全なリストを保存し、それぞれのクエリは１つのテーブルとして象徴的に表される。さらなる実施形態では、クエリが実行されるとき、すべての独立した結果セットがテーブルに変換された後、システムは、クエリの最終的な結果セットを返すべく、追加プロセスでテーブルとレイヤーを結合する。またさらなる実施形態では、最終的な結果セットは報告書を作成するために使用される。
【００３５】
非限定的な例としては、そのようなクロス・データベース参照は、複数の同時クエリを開始し、各々は１つのテーブルとして象徴的に表される。様々な実施形態では、クロス・データベース参照は、２、３、４、５、６、７、８、９、１０、１１、１２、１３、１４、１５、１６、１７、１８、１９、２０、またはそれ以上の同時クエリを開始する。様々な実施形態では、クロス・データベースクエリは、そのインクリメントを含む、１０、２０、３０、４０、５０、６０、７０、８０、９０、１００またはそれ以上の同時クエリを開始する。様々なさらなる実施形態では、クロス・データベース参照は、そのインクリメントを含む、１００、２００、３００、４００、５００、６００、７００、８００、９００、１０００、またはそれ以上の同時クエリを開始する。さらに様々な実施形態では、クロス・データベース参照は、そのインクリメントを含む、１０００、２０００、３０００、４０００、５０００、６０００、７０００、８０００、９０００、１００００またはそれ以上の同時クエリを開始する。本明細書で提供される開示物を考慮すると、当業者は、本明細書に開示されたクロス・データベース参照が、メタデータオブジェクト内の任意の適切な数のクエリを保存し、適切な数の同時クエリを開始することを認識するだろう。またさらなる例として、結果セットの各々はテーブルオブジェクトとしてメモリ・データベース内にあり、テーブルオブジェクトは、最終的な結果セットを組み立てるために、クロス・データベース・エンジンを介して処理および実行される。
【００３６】
幾つかの実施形態では、クロス・データベースクエリは、クロス・データベースクエリエンジンによって出されるまったく異なるクエリのリストまたは組み合わせに基づく。さらなる実施形態では、これらのクエリはメタデータシート内に保存される。まださらなる実施形態では、各々のサブクエリのクエリアセンブリは、メタデータシートのフィールドラベルに基づき、各々のサブクエリまたは子クエリは、データベースに対する直接クエリである。
【００３７】
幾つかの実施形態では、クロス・データベースクエリは、エイリアステーブルとして参照クエリを保存する。さらなる実施形態において、結合点は、対応するフィールドを参照するために等号を用いたスプレッドシート参照式を使用して定義され、それからそのフィールドを潜在的に引くことができる。またさらなる実施形態では、クロス・データベースクエリエンジンがそれぞれのデータスースをすべて検索してクエリを行い、エンジンは新しい結果セットを構築する。幾つかの実施形態では、新しい結果セットはメタデータシートで定義されたフィールドマッピングに基づき、フィールドは本明細書で開示された参照式方法論によってメタデータシートを参照する。
【００３８】
（セルベースの式）
幾つかの実施形態では、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法は、個々の外部のデータセットを参照するためにセルベースの式を利用する。マイクロソフトエクセル、Ｏｐｅｎ  Ｏｆｆｉｃｅ  Ｃａｌｃ、およびグーグルのスプレッドシートのようなスプレッドシートでのセルベースの式は、値を計算するために数学的な方程式を利用する。本明細書で提供される開示物を考慮すると、当業者は、これらのプログラムが一般に等号（＝）を含む式を指定することを認識するだろう。セルベースの式は、例えば、ストリングであり、これは、ある種の計算、または、別のセルへの参照を表す。例えば、図２を参照する。例えば、セル参照式は、セル「Ａ１」内で「＝Ｂ２」を構成することができる。これは単に参照式である。さらなる例として、式は数学関数「＝１＋２」を構成することができる。数学関数：「＝Ｃ１２＊１３＊Ｃ８３」に対処するために利用されるセルのミックスアンドマッチ（ｍｉｘ  ａｎｄ  ｍａｔｃｈ）を構成することもできる。あらゆるスプレッドシートは、これらの式の結果として生じるコンパイルを表示するためにセルベースのインタープリターを組み込む。
【００３９】
例えば、図３を見ると、Ａ３内の強調されたセルは、以下の「＝Ｈ２」を含む式を有している。この非限定的な実施形態において、セルＨ２は、外部のデータセットを参照するために、代表的なサンプルデータとして指定される。さらなる例として、この参照されたセルは、標的とされた報告書に挿入される際に、外部のデータセットからデータマッピング位置を記号化する。
【００４０】
（手続き関数）
幾つかの実施形態では、本明細書に開示されるシステム、プラットフォーム、環境、アプリケーション、および方法は、報告書の内容と形式を指定する手続き関数を含んでいる。
【００４１】
幾つかの実施形態では、手続き関数は一度実行される。他の実施形態では、手続き関数はループされる。ループはプロセスまたはステートメントを何度も、または、特定の事象が起こるまで、繰り返す方法である。さらなる実施形態では、ループは、列が始まり終わる場所を記す識別子を有する。またさらなる実施形態では、ループは、１以上のループが他のループ内に埋め込まれるように入れ子になっている。
【００４２】
さらなる実施形態では、手続き関数は報告書設計用テンプレート内のタグによって指定される。様々な実施形態では、タグは、文字、数、符号、単語、句、または記号である。さらに様々な実施形態では、タグは、丸括弧（例えば、＜、＞、［、］、｛、｝、（、）、など）のような文字、または、一連の文字を識別することによって囲まれる、または、一括りにされる。いくつかの実施形態では、タグが対で用いられる。さらなる実施形態では、１対のタグはオープンタグおよびクローズタグを含んでいる。他の実施形態では、タグは１つずつ使用される。幾つかの実施形態において、手続き関数は一つのタグによって指定される。他の実施形態では、手続き関数は２以上のタグによって指定される。
【００４３】
以下は適切なタグおよび関連する手続き関数の非限定的な例である。
【００４４】
＜ｉ＞  または＜ｉｔｅｍ＞いずれかのタグはループの始まりを表わす。
【００４５】
＜／ｉ＞または＜／ｉｔｅｍ＞いずれかのタグはループのクロージングを表わす。
【００４６】
＜ｄ＞  または＜ｄｅｔａｉｌ＞いずれかのタグは、ネスト化ループの始まりを表わす。
【００４７】
＜／ｄ＞または＜／ｄｅｔａｉｌ＞いずれかのタグは、ネスト化ループの終わりを表わす。
【００４８】
＜／ｐ＞または＜／ｐａｇｅｂｒｅａｋ＞いずれかのタグは改ページを表わす。
【００４９】
幾つかの実施形態では、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法は、手続き関数を解釈するためにソフトウェアインタープリターを含んでいる。さらなる実施形態では、ソフトウェアインタープリターは、報告書設計用テンプレート内のタグを読むことにより手続き関数を解釈する。
【００５０】
幾つかの実施形態では、インタープリターは、システムにタグを読み込み、例えば、以下の機能ができる：
【００５１】
１．データセットをフィルにかけて狭め、および／または、結果として生じるデータセットをソートする、いずれかの能力をユーザに与えるパラメーターベースの形式をレンダリングする  
【００５２】
２．テンプレートをインポートし、それを外部のデータセットとマージする。さらなる実施形態では、インタープリターは、新しく指定されたスプレッドシートで実行するための手続き関数を理解するために、すべてのタグをすべて読み込む。またさらなる実施形態では、手続き関数が適用され、新しく指定されたスプレッドシートは、セル、行、列、ワークシート、およびスプレッドシートを含むそれぞれのテンプレートからのプロパティを継承する。
【００５３】
（報告書デザインテンプレート）
本明細書に開示されるシステム、プラットフォーム、環境、アプリケーション、および方法は、任意の適切な報告書設計用テンプレートを利用する。幾つかの実施形態では、適切なテンプレートは、外部のデータセットのプロパティを包含するメタデータシートとして単一のワークシートを保存する明示的な構造に従う。さらなる実施形態では、ループの始まりおよび終わりを定義するために、タグと連動して定義された外部のデータセットに式を介して参照する他のテンプレート・ワークシートがある。
【００５４】
幾つかの実施形態では、報告書設計用テンプレートは、ユーザまたは開発者が報告書を設計するために作成する最初のキャンバスである。さらなる実施形態において、テンプレートは以下を構成する：
１．メタデータシート、および
２．テンプレート・ワークシート。
【００５５】
幾つかの実施形態では、それぞれのテンプレート・ワークシートは、外部のデータセットにタグと記号参照を運ぶ。例えば、それらは、和、平均、比率、またはスプレッドシートに支持された他の複雑な計算に対して、報告書を作成するためにユーザが利用するロジックを包含している。
【００５６】
幾つかの実施形態では、それぞれのテンプレートは、結果として生じる出力された報告書がサンプルデータを伴って見える可能性のある形式を表している。図３は、行２と４、および、列ＧとＨで強調されているシステムによって保存されたタグ列を含む、典型的な顧客報告書のテンプレートを描いている。この実施形態では、システムにより保存された行は、手続き関数（＜ｉｔｅｍ＞  ＜／ｉｔｅｍ＞タグを含む行２と４）、または、外部のデータセット（列ＧおよびＨ）を表す。幾つかの実施形態では、テンプレートは４つの主な機能を表わす：
１．報告書の審美的な描写
２．ループした行セット範囲
３．外部のデータセット、および、
４．式の形をしたセル内に埋め込まれたロジック
【００５７】
幾つかの実施形態では、インタープリターがロードされ実行されると、それぞれのテンプレートはコピーされ、指定された出力スプレッドシートになり、その間、それぞれのページ、行、列、およびセルのプロパティを維持する。さらなる実施形態では、インタープリターは１つ以上の外部のデータセットを読み込み、それをマッピングして、指定された出力スプレッドシート内のそれぞれの標的テンプレート・ワークシートにし、その間、もともとのテンプレート・ワークシートから設計された審美的機能と論理機能を維持する。
【００５８】
図４は、典型的な報告書のテンプレートに基づいて作られた典型的な顧客の報告書を示している。この実施例において、外部のデータセットはインタープリターにかけられ、手続型言語はテンプレートのタグに従ってレンダリングされた。
【００５９】
図５は、本質的にもっと複雑な典型的な報告書のテンプレートを描いている。この実施例において、報告書のテンプレートは、追加の＜ｄｅｔａｉｌ＞  ＜／ｄｅｔａｉｌ＞タグで表わされたネスト化ループを含んでいる。
【００６０】
図６は、強調された外部のデータセットを参照した、図５のテンプレートの非限定的な例を示す。
【００６１】
図７は、外部のデータセットがインタープリターにポーリングされた後に、図５と６のテンプレートから生じた報告書の非限定的な例を示す。
【００６２】
図８は、結果として生じる外部のデータセットと反復用のそれぞれの行の挿入に基づいてセルの値を内省し再調整するインタープリターを実証するために、図７から新しく決められた式の非限定的な例を示す。
【００６３】
（メタデータシート）
幾つかの実施形態では、テンプレート・スプレッドシートは、１枚以上のメタデータ・ワークシートを包含している。さらなる実施形態では、それぞれのメタデータ・ワークシートは以下を含む。
１．１つ以上の外部のデータセットの定義：外部のデータセットの定義は、外部のリレーショナルＤＢＭＳからのテーブルおよびフィールドを含んでいる。
２．検索フィルター：検索フィルターは、外部データソースから少しでも多い値でユーザに戻される結果セットを減らす消減するおよび制限するのに役立つ。
３．ソートフィルタ：ソートフィルタは、データセットを配置し、直線データから、ソートされたアレイセットに再編成する。
【００６４】
図９は、２つの部分を包含している典型的なメタデータシートを描いている。この非限定的な実施形態では、１つの部分はソートオプションとしてマークされる。ソート部分は行２７と２９の間にある。行２９は可能なソート選択肢を表し、これはユーザに利用可能になった報告書の形式によってロードされることになる。検索部分は行３１−３３によってユーザに利用可能である。さらに、この実施形態では、これらの部分の各々はシステムに読み込まれ、ユーザが入力パラメータを定義するためにＨＴＭＬの形式でユーザ向けのアプリケーションを作成する。
【００６５】
図１０は、特にこの実施形態で結果として生じた形式を描いている。
【００６６】
（報告書の作成）
本明細書で開示されるシステム、プラットフォーム、環境、アプリケーション、および方法は、任意の適切な報告書を作成する。幾つかの実施形態では、報告書はバイナリー形式でインタープリターから作成された出力である。様々なさらなる実施形態では、バイナリー形式は、限定されないが、エクセル９５、エクセル９７、エクセル２０００、エクセルＸＰ、エクセル２００３、エクセル２００７、エクセル２０１０、Ｏｐｅｎ  Ｏｆｆｉｃｅ  Ｃａｌｃ  １．０、Ｏｐｅｎ  Ｏｆｆｉｃｅ  Ｃａｌｃ  ２．０、および、Ｏｐｅｎ  Ｏｆｆｉｃｅ  Ｃａｌｃ  ３．０を含む、スプレッドシートアプリケーションのバイナリフォーマットである。他の実施形態では、報告書のバイナリー形式は、ワードプロセッシングアプリケーションのバイナリフォーマットである。幾つかの実施形態において、報告書はプレーンテキストファイルである。幾つかの実施形態において、報告書はＰＤＦファイルである。
【００６７】
（用途および応用）
本明細書で開示されるシステム、プラットフォーム、環境、アプリケーション、および方法は、報告書を作成するために、様々なデータソースに対して、任意の型のアドホッククエリーに適している。幾つかの実施形態では、適切なクエリは、報告書を作成するために、広範囲の全く異なる外部のデータセットに対するものである。さらなる実施形態では、適切なクエリは、クロス・データベースクエリであり、本明細書に開示されたシステム、プラットフォーム、環境、アプリケーション、および方法は、複数の同時クエリを開始し、それぞれのクエリは１つのテーブルとして象徴的に表わされる。
【００６８】
（コンピュータ）
いくつかの実施形態において、本明細書に記載されるシステム、プラットフォーム、および、方法は、コンピュータ（例えば、デジタル処理デバイス）またはその使用を含む。さらなる実施形態において、コンピュータは、デバイスの機能を実行する１つ以上のハードウェア中央処理装置（ＣＰＵ）を含む。またさらなる実施形態において、コンピュータは、実行可能な命令を行うように構成されたオペレーティングシステムをさらに含む。幾つかの実施形態において、コンピュータはコンピュータネットワークに随意に接続される。さらなる実施形態において、コンピュータは、ワールドワイドウェブにアクセスするようにインターネットに随意に接続される。またさらなる実施形態において、コンピュータは、クラウドコンピューティングインフラストラクチャーに随意に接続される。他の実施形態において、コンピュータはイントラネットに随意に接続される。他の実施形態において、コンピュータはデータ記憶デバイスに随意に接続される。
【００６９】
本明細書における記載に従って、適切なコンピュータは、非限定的な例として、サーバコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、ノートブックコンピュータ、サブノートブックコンピュータ、ネットブックコンピュータ、ネットパッドコンピュータ、セットトップコンピュータ、ハンドヘルドコンピュータ、インターネット家電、モバイルスマートホン、タブレットコンピュータ、および、携帯情報端末を含む。当業者は、多くのスマートホンが、本明細書に記載されるシステムでる使用するのに適していることを認識するであろう。当業者はさらに、随意のコンピュータネットワーク接続を有するテレビ、ビデオプレーヤー、および、デジタル音楽プレーヤーの選択は、本明細書に記載されるシステムで使用するのに適していることを認識するであろう。適切なタブレットコンピュータは、当業者に既知のブックレット、スレート、および、変換可能な構成を有するものを含む。
【００７０】
幾つかの実施形態において、コンピュータは、実行命令を行うように構成されたオペレーティングシステムを含む。オペレーティングシステムは、例えば、プログラムとデータを含むソフトウェアであり、これが、デバイスのハードウェアを管理し、アプリケーションを実行するためのサービスを提供する。当業者は、適切なサーバーオペレーティングシステムが、非限定的な例として、ＦｒｅｅＢＳＤ、ＯｐｅｎＢＳＤ、ＮｅｔＢＳＤ（登録商標）、Ｌｉｎｕｘ（登録商標）、Ａｐｐｌｅ（登録商標）Ｍｚｃ  ＯＳ  Ｘ  Ｓｅｒｖｅｒ（登録商標）、Ｏｒａｃｌｅ（登録商標）Ｓｏｌａｒｉｓ（登録商標）、Ｗｉｎｄｏｗｓ  Ｓｅｒｖｅｒ（登録商標）、および、Ｎｏｖｅｌｌ（登録商標）ＮｅｔＷａｒｅ（登録商標）を含むことを認識するであろう。当業者は、適切なパーソナルコンピュータオペレーティングシステムが、非限定歴な例として、Ｍｉｃｒｏｓｏｆｔ（登録商標）、Ｗｉｎｄｏｗｓ（登録商標）、Ａｐｐｌｅ（登録商標）Ｍａｃ  ＯＳ  Ｘ（登録商標）、ＵＮＩＸ（登録商標）、および、ＧＮＵ／Ｌｉｎｕｘ（登録商標）などのＵＮＩＸ（登録商標）のようなオペレーティングシステムを含むことを認識するであろう。幾つかの実施形態において、オペレーティングシステムは、クラウドコンピューティングによって提供される。当業者はさらに、適切なモバイルスマートホンのオペレーティングシステムが、非限定的な例として、Ｎｏｋｉａ（登録商標）Ｓｙｍｂｉａｎ（登録商標）ＯＳ、Ａｐｐｌｅ（登録商標）ｉＯＳ（登録商標）、Ｒｅｓｅａｒｃｈ  Ｉｎ  Ｍｏｔｉｏｎ（登録商標）ＢｌａｃｋＢｅｒｒｙ  ＯＳ（登録商標）、Ｇｏｏｇｌｅ（登録商標）Ａｎｄｒｏｉｄ（登録商標）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ  Ｐｈｏｎｅ（登録商標）ＯＳ、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｉｎｄｏｗｓ  Ｍｏｂｉｌｅ（登録商標）ＯＳ、Ｌｉｎｕｘ（登録商標）、および、Ｐａｌｍ（登録商標）ＷｅｂＯＳ（登録商標）を含むことを認識するであろう。
【００７１】
幾つかの実施形態において、コンピュータは、記憶デバイスおよび／またはメモリコンピュータを含む。記憶デバイスおよび／またはメモリデバイスは、一時的または永久的な観点からデータまたはプログラムを記憶するために使用される１つ以上の物理的な機器である。幾つかの実施形態において、デバイスは揮発性メモリであり、記憶した情報を維持するための電力を必要とする。幾つかの実施形態において、デバイスは不揮発性メモリであり、デジタル処理デバイスに電力が供給されないときは、記憶した情報を保持する。さらなる実施形態において、不揮発性メモリはフラッシュメモリを含む。幾つかの実施形態において、不揮発性メモリは、ダイナミックランダムアクセスメモリ（ＤＲＡＭ）を含む。幾つかの実施形態において、不揮発性メモリは、強誘電体ランダムアクセスメモリ（ＦＲＡＭ）（登録商標）を含む。幾つかの実施形態において、不揮発性メモリは、相変化ランダムアクセスメモリ（ＰＲＡＭ）を含む。他の実施形態において、デバイスは、非限定的な例として、ＣＤ−ＲＯＭ、ＤＶＤ、フラッシュメモリデバイス、磁気ディスクドライブ、磁気テープドライブ、光ディスクドライブ、および、クラウドコンピューティングベースの記憶装置を含む記憶デバイスである。またさらなる実施形態において、記憶デバイスおよび／またはメモリデバイスは、本明細書に開示されるようなデバイスの組み合わせである。
【００７２】
幾つかの実施形態において、コンピュータは、ユーザに視覚な情報を送るためのディスプレイを含む。幾つかの実施形態において、ディスプレイはブラウン管（ＣＲＴ）である。幾つかの実施形態において、ディスプレイは液晶ディスプレイ（ＬＣＤ）である。さらなる実施形態において、ディスプレイは薄膜トランジスタ液晶ディスプレイ（ＴＦＴ−ＬＣＤ）である。幾つかの実施形態において、ディスプレイは、有機発光ダイオード（ＯＬＥＤ）ディスプレイである。様々なさらなる実施形態において、ＯＬＥＤディスプレイは、パッシブ−マトリックス方式ＯＬＥＤ（ＰＭＯＬＥＤ）またはアクティブ−マトリックスＯＬＥＤ（ＡＭＯＬＥＤ）のディスプレイである。幾つかの実施形態において、ディスプレイはプラズマディスプレイである。他の実施形態において、ディスプレイはビデオプロジェクターである。またさらなる実施形態において、ディスプレイは、本明細書に開示されるようなデバイスの組み合わせである。
【００７３】
幾つかの実施形態において、コンピュータは、ユーザからの情報を受信するための入力装置を含む。幾つかの実施形態において、入力装置はキーボードである。幾つかの実施形態において、入力装置は、非限定的な例として、マウス、トラックボール、トラックパッド、ジョイスティック、ゲームコントローラ、またはスタイラスを含む、ポインティングデバイスである。幾つかの実施形態において、入力装置はタッチスクリーンまたはマルチタッチスクリーンである。他の実施形態において、入力装置は、声または他の音の入力を捕らえるマイクロホンである。他の実施形態において、入力装置は、動作または視覚の入力を捕らえるビデオカメラである。またさらなる実施形態において、入力装置は本明細書に開示されるようなデバイスの組み合わせである。
【００７４】
（非一時的なコンピュータで読み取り可能な媒体）
幾つかの実施形態において、本明細書に開示されるシステム、プラットフォーム、環境、アプリケーション、および、方法は、デジタル処理デバイスのオペレーティングシステムによって実行可能な命令を含むプログラムで符号化された１つ以上のコンピュータで読み取り可能な媒体を含む。さらなる実施形態において、コンピュータで読み取り可能な媒体は、デジタル処理デバイスの有形（ｔａｎｇｉｂｌｅ）要素である。またさらなる実施形態において、コンピュータで読み取り可能な媒体は、デジタル処理デバイスから随意に取り外し可能である。幾つかの実施形態において、コンピュータで読み取り可能な媒体は、非限定的な例として、ＣＤ−ＲＯＭ、ＤＶＤ、フラッシュメモリデバイス、ソリッドステートメモリ、磁気ディスクドライブ、磁気テープドライブ、光ディスクドライブ、クラウドコンピューティングシステム、および、サービスなどを含む。様々な実施形態では、符号化は、永久的なものであるか、実質的に永久的なものであるか、半永久的なものであるか、あるいは、非一時的なものである。
【００７５】
（コンピュータプログラム）
幾つかの実施形態では、本明細書で開示されるシステム、プラットフォーム、環境、アプリケーション、および、方法は、１つ以上のコンピュータプログラムを含んでいる。コンピュータプログラムは、指定されたタスクを実行するように書き込まれた、デジタル処理デバイスのＣＰＵにおいて実行可能な一連の命令を含む。本明細書で提供される開示を考慮して、当業者は、コンピュータプログラムが様々な言語の様々なバージョンで書かれてもよいことを認識するであろう。適切なプログラミング言語は、非限定的な例として、Ｊａｖａ（登録商標）、ＶＢ、ＶＢ．ＮＥＴ、Ｃ＃、Ｃ、Ｃ＋＋、ＣＦＭＬ、Ｐｙｔｈｏｎ、Ｐｅｒｌ、Ｒｕｂｙ、ＰＨＰ、Ｏｂｊｅｃｔｉｖｅ  Ｃ、ＪａｖａＳｃｒｉｐｔ（登録商標）、Ｄｅｌｐｈｉ、Ｌｉｓｐ、Ｐａｓｃａｌ、Ａｄａ、Ａｓｓｅｍｂｌｙ、ＡＢＡＰ、および、Ｃｏｃｏａ、または、その組み合わせを含んでいる。幾つかの実施形態において、コンピュータプログラムは、ソフトウェアフレームワークで作られる。適切なソフトウェアフレームワークは、非限定的な例として、Ｓｔｒｉｎｇ、Ｓｒｕｔｓ、Ｄｊａｎｇｏ、Ｒｕｂｙ  ｏｎ  Ｒａｉｌｓ、ＡＳＰ．ＮＥＴ、Ｓｔｒｕｔｓ、Ｌｉｆｔ、Ｔａｐｅｓｔｒｙ、Ｓｅａｍ、Ｗｉｃｋｅｔ、Ｓｙｍｆｏｎｙ、Ｙｉｉ、Ｄｒｕｐａｌ、Ｊｏｏｍｌａ、Ｇｒａｉｌｓ、ＪＢｏｓｓ、Ｓｈａｌｅ、Ｓｌｉｎｇ、Ｅｃｌｉｐｓｅ  ＲＡＰ、ＯｒａｃｌｅＡＤＦ、ＯｐｅｎＸａｖａ、Ｒｉｃｈｆａｃｅｓ、Ｇｏｏｇｌｅ  Ｗｅｂ  Ｔｏｏｌｋｉｔ、ＩｃｅＦａｃｅｓ、ＷｅｂＯｂｊｅｃｔｓ、ＴｕｒｂｏＧｅａｒｓ、Ｚｏｐｅ、ＣｏｌｄＦｕｓｉｏｎ、ＢＦＣ、ＤｏｔＮｅｔＮｕｋｅ、ＭｏｎｏＲａｉｌ、Ｆｌｅｘ、および、ＡＪＡＸ、または、これらの組み合わせを含む。
【００７６】
幾つかの実施形態において、コンピュータプログラムは命令の１つのシーケンスを含む。幾つかの実施形態において、コンピュータプログラムは命令の複数のシーケンスを含む。様々な実施形態において、コンピュータプログラムは、ファイル、コードのセクション、プログラムオブジェクト、プログラム構造、またはそれらの組み合わせを含む。さらに様々な実施形態において、コンピュータプログラムは、複数のファイル、コードの複数のセクション、複数のプログラムオブジェクト、複数のプログラム構造、またはそれらの組み合わせを含む。幾つかの実施形態において、コンピュータプログラムは、１つの位置から送達される。他の実施形態において、コンピュータプログラムは複数の位置から送達される。さらに他の実施形態において、コンピュータプログラムはクラウドコンピューティングプラットフォームまたはサービスから送達される。様々な実施形態において、コンピュータプログラムは、１以上のソフトウェアモジュールを含む。様々な実施形態において、コンピュータプログラムは、一部または全体として、１つ以上のウェブアプリケーション、１つ以上のモバイルアプリケーション、１つ以上のスタンドアロンアプリケーション、１つ以上のウェブブラウザプラグイン、拡張子、アドインまたはアドオン、あるいは、これらの組み合わせを含む。
【００７７】
（ソフトウェアモジュール）
本明細書で開示されるシステム、プラットフォーム、環境、アプリケーション、および、方法は、様々な実施形態において、ソフトウェア、サーバー、および、データベースモジュールを含んでいる。本明細書で提供される開示を考慮して、ソフトウェアモジュールは、当該技術分野で既知のマシン、ソフトウェア、および、言語を使用する、当業者に既知の技術によって作り出される。本明細書で開示されるソフトウェアモジュールは多くの方法で実施される。様々な実施形態において、ソフトウェアモジュールは、ファイル、コードのセクション、プログラムオブジェクト、プログラム構造、またはそれらの組み合わせを含む。さらに様々な実施形態において、ソフトウェアモジュールは、複数のファイル、コードの複数のセクション、複数のプログラムオブジェクト、複数のプログラム構造、またはそれらの組み合わせを含む。様々な実施形態において、１つ以上のソフトウェアモジュールは、非限定的な例において、ウェブアプリケーション、モバイルアプリケーション、および、スタンドアロンアプリケーションを含む。幾つかの実施形態において、ソフトウェアモジュールは、１つのコンピュータプログラムまたはアプリケーション内にある。他の実施形態において、ソフトウェアモジュールは２以上のコンピュータプログラムまたはアプリケーション内にある。幾つかの実施形態において、ソフトウェアモジュールは１つのマシン上で提供される。他の実施形態において、ソフトウェアモジュールは２以上のマシン上で提供される。さらなる実施形態において、ソフトウェアモジュールは、クラウドコンピューティングプラットフォーム上で提供される。幾つかの実施形態において、ソフトウェアモジュールは１つの位置にある１つ以上のマシン上で提供される。他の実施形態において、ソフトウェアモジュールは、２以上の位置にある１つ以上のマシン上で提供される。
【００７８】
（実施例）
以下の例証的な実施例は、本明細書に記載のソフトウェアアプリケーション、システム、および方法の実施形態の代表的なものであり、いかなる方法でも限定することを目的とはしていない。
【００７９】
＜実施例１＞−保存された報告書の作成
ある会社のＣＥＯが、営業本部長に、主要な顧客２社の信用限度、前年の収益、受取債権比率に対する信用度を含む報告書を、総信用限度、前年の収益の合計、および、平均的な信用度対収益の比率を報告書の下欄にまとめた１つの報告書で作成するように求める。販売部長は以下の通りに行動する。
【００８０】
Ｉ．出来合いのテンプレートをプルアップする。
ＩＩ．報告書の列の見出しを特定する（図１１を参照）。
ＩＩＩ．行の始まりと終わりをタグ付けする（図１１を参照）。
ＩＶ．信用限度、前年の収益について下欄に和の公式を作成し、平均的な信用度対収益の比率を加える。
Ｖ．アプリケーションフォルダーに出力を保存する。
ＶＩ．検索バーに「Ｇｅｎｅｒａｌ  Ｍｏｔｏｒｓ  Ｃｏｍｐａｎｙ，Ｐｅｐｐｅｒｄｉｎｅ  Ｄｅｍｏ」とタイプし、クエリを保存し、保存されたクエリを含む指定されたページへのリンクをＣＥＯに送る。
【００８１】
ＣＥＯはこのブックマークの付いたリンクを開き、開発者、部長、またはスタッフに邪魔されることなく都合のよい時に報告書に目を通す。図１２を参照のこと。この単純なプロセスは、開発者に新しい手続型言語を理解するように要求することなく、新しい報告書を作成するのに、約５−１０分かかるだけである。
【００８２】
＜実施例２＞−仕様書を作成するための保存された報告書の使用
ある製品開発デザイナーは、最終的なグッズを製造するためにすべての個別の部品の重量、コスト、および量を含んでいる材料リストの付いた仕様書が欲しい。デザイナーは、製品の最小在庫管理単位（ＳＫＵ）のシステムと種類に関するＵＲＬを検索フォームにロードして、得られた報告書を検索する。その報告書はメーカーの仕様書に従ってフォーマットされる。デザイナーは、データがすべて正確であることをチェックし確認する。スプレッドシートはさらなる製品開発のためにメーカーにｅ−ｍａｉｌされる。
【００８３】
＜実施例３＞−１日の輸出報告書
輸送運送会社は、国ごとに分けられたその日に輸出したすべてのコンテナの集計が欲しい。その会社の社長は、その特定の日の開始日と終了日の報告書に目を通す。システムは、同じ順番でソートされたすべてのＳＫＵ、コンテナ、容器、および、国々を列挙する。
【００８４】
＜実施例４＞−営業報告書
会社の販売責任者は、部下の販売員に支払うべき手数料の月末報告書を編集する必要がある。彼女は、セールスマンによってソートされた報告書の開始日として１２／１／２０１１を、終了日として１２／３１／２０１１を入力する。報告書は、量＊価格＊手数料率の小計を含む各行項目を含む表形式ですべての金額と手数料率を有している。スプレッドシートの下欄には、その月に送られた合計単位の要約、その月に売られたすべてのグッズの平均的な統一小売価格、および、その月に支払われる合計手数料率を含む多くの計算がある。
【００８５】
＜実施例５＞−クロス・データベースクエリ
クロス・データベースクエリは、いかなるデータベース保存機構も維持しないメモリ内データベースを利用する。システムは、メタデータオブジェクトにクエリの完全なリストを保存する。それぞれのクエリは、１つのテーブルとして象徴的に表される。すべての独立した結果セットがテーブルに変換された後、ＸＤＢデータベースは、最終的な結果セットを返すべく、追加プロセスでテーブルとレイヤーを結合する。
【００８６】
（基本的な概要）
特定の実施形態は２つのクエリを含んでいる：
クエリ１：ＳＥＬＥＣＴ  ｃｕｓｔｏｍｅｒ＿ｉｄ、ｃｕｓｔｏｍｅｒ＿ｎａｍｅ  ＦＲＯＭ  ｃｕｓｔｏｍｅｒ
テーブルエイリアス：ｘｄｂ１
【００８７】
結果として生じる結果セットは以下のデータセットを産出する。
【００８８】
【表１】
2015504213.tif 000003
【００８９】
クエリ２：ＳＥＬＥＣＴ  ｏｒｄｅｒ＿ｉｄ、ｃｕｓｔｏｍｅｒ＿ｉｄ、ｏｒｄｅｒ＿ｄａｔｅ  ＦＲＯＭ  ｏｒｄｅｒｓ
テーブルエイリアス：ｘｄｂ２
【００９０】
結果として生じる結果セットは以下のデータセットを産出する。
【００９１】
【表２】
2015504213.tif 000004
【００９２】
それぞれのクエリはテーブルエイリアスを与えられる。この実施例において、クエリ１はｘｄｂ１としてエイリアス処理され、クエリ２はｘｄｂ２としてエイリアス処理される。
【００９３】
クロス・データベースクエリは以下のとおりである：
ＳＥＬＥＣＴ
ｘｄｂ１．ｃｕｓｔｏｍｅｒ＿ｎａｍｅ
ｘｄｂ２．ｏｒｄｅｒ＿ｄａｔｅ
ＦＲＯＭ
ｘｄｂ１
ＩＮＮＥＲ  ＪＯＩＮ  ｘｄｂ２  ＯＮ  ｘｄｂ１．ｃｕｓｔｏｍｅｒ＿ｉｄ＝ｘｄｂ２．ｃｕｓｔｏｍｅｒ＿ｉｄ
【００９４】
クロス・データベースクエリは２つの同時クエリを開始する。結果セットの各々は、テーブルオブジェクトとしてメモリ内データベース内にある。その後、テーブルオブジェクトは処理され、ＸＤＢデータベース・エンジンにかけられることで最終的な結果セットを組み立てる。
【００９５】
【表３】
2015504213.tif 000005
【００９６】
この実施例におけるワークフローは次のとおりである。
【００９７】
最初に、クロス・データベース・エンジンがクエリを受け取る：
ＳＥＬＥＣＴ
ｘｄｂ１．ｃｕｓｔｏｍｅｒ＿ｎａｍｅ
ｘｄｂ２．ｏｒｄｅｒ＿ｄａｔｅ
ＦＲＯＭ
ｘｄｂ１
ＩＮＮＥＲ  ＪＯＩＮ  ｘｄｂ２  ＯＮ  ｘｄｂ１．ｃｕｓｔｏｍｅｒ＿ｉｄ＝ｘｄｂ２．ｃｕｓｔｏｍｅｒ＿ｉｄ
【００９８】
次に、クロス・データベース・エンジンは、まったく異なる遠隔データベースに対して以下のクエリを出す：
クエリ１：ＳＥＬＥＣＴ  ｃｕｓｔｏｍｅｒ＿ｉｄ、ｃｕｓｔｏｍｅｒ＿ｎａｍｅ  ＦＲＯＭ  ｃｕｓｔｏｍｅｒ
クエリ２：ＳＥＬＥＣＴ  ｏｒｄｅｒ＿ｉｄ、ｃｕｓｔｏｍｅｒ＿ｉｄ、ｏｒｄｅｒ＿ｄａｔｅ  ＦＲＯＭ  ｏｒｄｅｒｓ
【００９９】
第３に、クロス・データベース・エンジンは、クエリ１とクエリ２の各々から同時に結果セットを受け取り、ＸＤＢクライアントに返す新しいセットを組み立てる。システムは、選択された列の数を再検討し、２つの結果セットが内部の結合ステートメントに基づいて結合された後に、行の数に基づいた二列の結果セット（ｘｄｂ１．ｃｕｓｔｏｍｅｒ＿ｎａｍｅ、ｘｄｂ２．ｏｒｄｅｒ＿ｄａｔｅ）を構築する。
【０１００】
（メタデータシートに対するクロス・データベースクエリ）
クロス・データベースクエリは、クロス・データベースクエリエンジンによって出されるまったく異なるクエリのリストまたは組み合わせに基づく。これらのクエリは実際には本明細書に記載のメタデータシート内に保存される。
【０１０１】
図１３を見ると、特定の実施形態では、メタデータシートは「ｂｉｂｏｍｄ」の接頭辞を含んでシステム内で標識化される。
【０１０２】
各サブクエリのクエリアセンブリは、メタデータシートのフィールドラベルに基づく。それぞれのサブクエリまたは子どもクエリは、データベースに対する直接的なクエリである。
【０１０３】
図１４−１６を見ると、複数のデータソースから来る複数のメタデータシートが示されている。例えば、図１４（Ｏｒａｃｌｅ）、図１５（Ｓａｌｅｓｆｏｒｃｅ）、および、図１６（Ｍｏｎｇｏ）を参照のこと。
【０１０４】
（エイリアス処理されたフィールドオブジェクトに対するクロス・データベースクエリ
図１７を見ると、本明細書に記載のクロス・データベースクエリは、参照クエリを列Ｄの１つのようにエイリアス処理されたテーブルとして保存する。結合点は、対応するフィールドを、そのフィールドを潜在的に引くことができる場所から参照するために等号を使用して、マイクロソフトエクセルの参照式を用いて定義される。この特定の実施例において、テーブルエイリアスは、上に示されたメタデータシートの名前と同じである。それらは一語一句、名前が同じである。強調されたセルＦ２６は、セルＥ８４に対して標識化された「ｂｉｂｏｍｄ＿ｓｆｏｒｃｅ」内に別のワークシートに対する式を包含している。この参照／マッピングは、テーブルとしてＤ列でエイリアス処理された結果として生じるデータセットを「連結する」ために使用される。
【０１０５】
（クロス・データベースクエリのフィールド選択および構造）
ＸＤＢがそれぞれのデータソースをすべて読みだしてクエリを行った、ＸＤＢエンジンは真新しい結果セットを構築する必要がある。新しい結果セットは、メタデータシートで定義されたフィールドマッピングに基づく。フィールドは参照式の方法論によってメタデータシートを参照している。
【０１０６】
図１８を見ると、Ｓａｌｅｓｆｏｒｃｅ結果セットからのフィールドとしてＡｃｃｏｕｎｔＮｕｍｂｅｒをマッピングするとしたら、システムは、セルＥ９０で標的にされた「ｂｉｂｏｍｄ＿ｓｆｏｒｃｅ」ワークシートに対する参照式を使用するだろう。マッピングプロセスは、まったく異なるデータソースの集計された結果セットをまとめる。
【０１０７】
本発明の好ましい実施形態が本明細書で示され記載されているが、このような実施形態はほんの一例として提供されているにすぎないことは当業者には明らかであろう。多くの変更、変化、および置換が、本発明から逸脱することなく、当業者には思い浮かぶであろう。当然のことながら、本明細書に記載される発明の実施形態に対する様々な代替物が本発明を実行するために用いられてもよい。
【図２】
2015504213.tif 000006
【図３】
2015504213.tif 000007
【図４】
2015504213.tif 000008
【図５】
2015504213.tif 000009
【図６】
2015504213.tif 000010
【図７】
2015504213.tif 000011
【図８】
2015504213.tif 000012
【図９】
2015504213.tif 000013
【図１０】
2015504213.tif 000014
【図１１】
2015504213.tif 000015
【図１２】
2015504213.tif 000016
【図１３】
2015504213.tif 000017
【図１４】
2015504213.tif 000018
【図１５】
2015504213.tif 000019
【図１６】
2015504213.tif 000020
【図１７】
2015504213.tif 000021
【図１８】
2015504213.tif 000022
【図１】
2015504213.tif 000023
【国際調査報告】
2015504213.tif 000024
2015504213.tif 000025