(57)【要約】（Ｎ＋Ｑ）次元カスタムクエリを送信すること、および、Ｎ次元ネイティブＯＬＡＰキューブ（１２）への送信のために、（Ｎ＋Ｑ）次元カスタムクエリをＮ次元クエリに変換することによって、データの（Ｎ＋Ｑ）次元は、Ｎ次元ネイティブＯＬＡＰキューブ（１２）において分析され得る。Ｎ次元クエリのＮ次元結果が提供され、（Ｎ＋Ｑ）次元カスタムクエリの（Ｎ＋Ｑ）次元結果が変換される。（Ｎ＋Ｑ）次元結果は、次に、（Ｎ＋Ｑ）次元カスタムクエリへの回答として提供される。
2007513428.tif 000002
【特許請求の範囲】
【請求項１】
Ｎ次元ネイティブＯＬＡＰキューブにおけるデータ分析の方法であって、該方法は、
（Ｎ＋Ｑ）次元カスタムクエリを送信するステップと、
該Ｎ次元ネイティブＯＬＡＰキューブへの送信のために、該（Ｎ＋Ｑ）次元カスタムクエリをＮ次元クエリに変換するステップと、
該Ｎ次元クエリのＮ次元結果を提供するステップと、
該Ｎ次元クエリのＮ次元結果を該（Ｎ＋Ｑ）次元カスタムクエリの（Ｎ＋Ｑ）次元結果に変換するステップと、
該（Ｎ＋Ｑ）次元クエリの（Ｎ＋Ｑ）次元結果を提供するステップと
を包含する、方法。
【請求項２】
前記（Ｎ＋Ｑ）次元カスタムクエリをＮ次元クエリへ変換するステップと、前記Ｎ次元クエリのＮ次元結果を前記（Ｎ＋Ｑ）次元クエリの（Ｎ＋Ｑ）次元結果へ変換するステップが、
前記Ｎ次元ネイティブＯＬＡＰキューブに定義されていない該（Ｎ＋Ｑ）次元カスタムクエリで指定される次元に対応する、少なくとも一つのカスタム階層を定義するステップであって、該カスタム階層は該（Ｎ＋Ｑ）次元カスタムクエリで指定される軸を有する、ステップと、
該Ｎ次元クエリの実行のための共通クエリ軸を特定するステップであって、該共通クエリ軸はネイティブ階層および該カスタム階層を含む、ステップと、
該共通クエリ軸上の該（Ｎ＋Ｑ）次元カスタムクエリおよび該ネイティブ階層の基準に対応して、該カスタム階層を表す該Ｎ次元クエリにおける算出メンバーを定義するステップと
該（Ｎ＋Ｑ）次元カスタムクエリに従い、該算出メンバーを編成するステップと
を包含する、請求項１に記載の方法。
【請求項３】
前記Ｎ次元クエリの実行のための、前記共通クエリ軸を特定するステップが、
前記（Ｎ＋Ｑ）次元カスタムクエリが、該共通クエリ軸としての特定のために、前記カスタム階層の指定軸との共通軸を有するネイティブ階層を指定するか否かを判断するステップと、  
該（Ｎ＋Ｑ）次元カスタムクエリが、該カスタム階層の指定軸との共通軸を有するネイティブ階層を指定しない場合、該共通クエリ軸が該カスタム階層の指定軸として特定されるように、該カスタム階層の指定軸へ移動可能なネイティブ階層が存在するという判断の後、ネイティブ階層を該カスタム階層の指定軸へ移動するステップと、
該カスタム階層の指定軸へ移動可能なネイティブ階層が存在しない場合、該共通クエリ軸が該（Ｎ＋Ｑ）次元カスタムクエリで指定される該ネイティブ階層の軸として特定されるように、前記ネイティブ階層および該カスタム階層の選択が組み合わされた状態で、該カスタム階層の指定軸との共通軸を持たない前記（Ｎ＋Ｑ）次元カスタムクエリにより指定されるネイティブ階層の軸上に、該カスタム階層を置くステップと
を包含する、請求項２に記載の方法。
【請求項４】
前記カスタム階層の指定軸との共通軸を持たない前記（Ｎ＋Ｑ）次元カスタムクエリにより指定される前記ネイティブ階層の軸としての前記共通クエリ軸の特定が、前記（Ｎ＋Ｑ）次元カスタムクエリに従い、前記算出メンバーを編成するステップにつながり、該ステップは、
前記カスタム階層の指定軸を含めるために、該共通クエリ軸上の該（Ｎ＋Ｑ）次元カスタムクエリおよび該ネイティブ階層の基準に対応して、該算出メンバーを変換するステップを包含する、請求項３に記載の方法。
【請求項５】
前記少なくとも一つのカスタム階層の定義を、前記ネイティブＯＬＡＰキューブと別個のメモリに格納するステップをさらに包含する、請求項２に記載の方法。
【請求項６】
各ユーザを識別するステップと、
ユーザの識別に基づく前記メモリに保存される前記少なくとも一つのカスタム階層の少なくとも一つの選択された定義を提供するステップと
をさらに包含する、請求項５に記載の方法。
【請求項７】
前記（Ｎ＋Ｑ）次元クエリの基準が、ネイティブ階層のメンバーのグループを指定することを含む、請求項２に記載の方法。
【請求項８】
前記ネイティブ階層の前記指定されたメンバーのグループが、共通属性を有することによって特定される、請求項７に記載の方法。
【請求項９】
前記ネイティブ階層の指定された前記メンバーのグループが、特定要件を満たす指標を有することにより指定される、請求項７に記載の方法。
【請求項１０】
前記（Ｎ＋Ｑ）次元クエリの基準が、前記ネイティブＯＬＡＰキューブからのメタデータに基づき、前記カスタム階層のメンバーが満たさなければならない少なくとも一つの式を指定すること含む、請求項２に記載の方法。
【請求項１１】
Ｎ次元ネイティブＯＬＡＰキューブにおけるデータ分析用システムであって、該システムは、
カスタムクエリを特定し、該カスタムクエリの結果を表示するためのアプリケーションソフトウェアであって、該カスタムクエリおよび該カスタムリの結果は、（Ｎ＋Ｑ）次元を有する、アプリケーションソフトウェアと、
該アプリケーションソフトウェアと該Ｎ次元ネイティブＯＬＡＰキューブ間でロジックで接続されるカスタム階層ソフトウェアと
を備え、
該カスタム階層ソフトウェアは、
該Ｎ次元ネイティブＯＬＡＰキューブへの送信のために、該カスタムクエリをＮ次元クエリへ変換し、
該Ｎ次元クエリのＮ次元結果を提供し、
該Ｎ次元クエリの該Ｎ次元結果を、該カスタムクエリの該（Ｎ＋Ｑ）次元結果へ変換するように動作する、システム。
【請求項１２】
前記（Ｎ＋Ｑ）次元カスタムクエリにおいて指定され、前記Ｎ次元ネイティブＯＬＡＰキューブに定義されていない次元に対応する、少なくとも一つのカスタム階層を定義することによって、前記カスタム階層ソフトウェアは、前記カスタムクエリをＮ次元クエリに変換し、前記Ｎ次元クエリの前記Ｎ次元結果を前記カスタムクエリの前記（Ｎ＋Ｑ）次元結果に変換する、請求項１１に記載のシステム。
【請求項１３】
前記少なくとも一つのカスタム階層が、前記（Ｎ＋Ｑ）次元カスタムクエリにおいて指定される基準に対応する前記ネイティブＯＬＡＰキューブのネイティブ階層の少なくとも一つのメンバーを特定することにより判断される、少なくとも一つの算出メンバーを備える、請求項１２に記載のシステム。
【請求項１４】
前記少なくとも一つのカスタム階層の前記少なくとも一つの算出メンバーが、さらにドリル可能である、請求項１３に記載のシステム。
【請求項１５】
前記（Ｎ＋Ｑ）次元カスタムクエリにおいて指定される基準が、共通属性を有するネイティブ階層の選択されたメンバー、指定された要件を満たす指標を有するネイティブ階層の選択されたメンバー、および前記カスタムクエリにおいて名前で特定されるネイティブ階層の選択されたメンバーから成るグループから選択される、請求項１２に記載のシステム。
【請求項１６】
前記（Ｎ＋Ｑ）次元カスタムクエリにおいて指定される基準が、前記ネイティブＯＬＡＰキューブからのメタデータに基づき、前記カスタム階層のメンバーが満たさなければならない少なくとも一つの式を指定することを備える、請求項１２に記載のシステム。
【請求項１７】
前記少なくとも一つのカスタム階層の定義を格納するための、前記ＯＬＡＰキューブと別個のメモリをさらに備える、請求項１２に記載のシステム。
【請求項１８】
前記アプリケーションソフトウェアが、ユーザの識別に基づいて、前記メモリに格納される前記少なくとも一つの前記カスタム階層の、少なくとも一つの選択された定義を提供するよう動作可能である、請求項１７に記載のシステム。
【請求項１９】
Ｎ次元ネイティブＯＬＡＰキューブによる実行のために、（Ｎ＋Ｑ）次元カスタムクエリをＮ次元クエリへ変換する方法であって、該方法は、
該Ｎ次元ネイティブＯＬＡＰキューブに定義されていない、該（Ｎ＋Ｑ）次元カスタムクエリにおいて指定される次元に対応して、少なくとも一つのカスタム階層を定義するステップであって、該カスタム階層は、該（Ｎ＋Ｑ）次元カスタムクエリにおいて指定される軸を有する、ステップと、
該Ｎ次元クエリの実行のために、共通クエリ軸を特定するステップであって、該共通クエリ軸はネイティブ階層および該カスタム階層を含む、ステップと、
該共通クエリ軸上の（Ｎ＋Ｑ）次元カスタムクエリおよび該ネイティブ階層の基準に対応して、該カスタム階層を表す該Ｎ次元クエリにおける算出メンバーを定義するステップと、
該（Ｎ＋Ｑ）次元カスタムクエリに従い、算出メンバーを編成するステップと
を包含する、方法。
【請求項２０】
前記カスタム階層との共通軸を有する前記ネイティブ階層を特定するステップが、
前記（Ｎ＋Ｑ）次元カスタムクエリが、前記共通クエリ軸としての特定のために、該カスタム階層の指定軸との共通軸を有するネイティブ階層を指定するか否かを判断するステップと、
該（Ｎ＋Ｑ）次元カスタムクエリが、該カスタム階層の指定軸との共通軸を有するネイティブ階層を指定しない場合、該共通クエリ軸が、該カスタム階層の指定軸として特定されるように、該カスタム階層の指定軸へ移動可能なネイティブ階層が存在するという判断の後、ネイティブ階層を該カスタム階層の指定軸へ移動するステップと、
該カスタム階層の指定軸へ移動可能なネイティブ階層が存在しない場合、該共通クエリ軸が、該（Ｎ＋Ｑ）次元カスタムクエリにより指定される該ネイティブ階層の軸として特定されるように、該ネイティブ階層および該カスタム階層の選択が組み合わされた状態で、該カスタム階層の指定軸との共通軸を持たない該（Ｎ＋Ｑ）次元カスタムクエリで指定されるネイティブ階層の軸上に該カスタム階層を置くステップと
を包含する、請求項１９に記載の方法。
【請求項２１】
前記カスタム階層の指定軸との共通軸を持たない（Ｎ＋Ｑ）次元カスタムクエリにより指定される前記ネイティブ階層の軸としての前記共通クエリ軸の特定が、前記（Ｎ＋Ｑ）次元カスタムクエリに従い、前記算出メンバーを編成するステップにつながり、該ステップは、
該カスタム階層の指定軸を含めるために、該共通クエリ軸上の該（Ｎ＋Ｑ）次元カスタムクエリおよび該ネイティブ階層の基準に対応して、該算出メンバーを変換するステップを包含する、請求項２０に記載の方法。
【請求項２２】
前記ネイティブＯＬＡＰキューブと別個のメモリに、前記少なくとも一つのカスタム階層の定義を格納するステップをさらに包含する、請求項１９に記載の方法。
【請求項２３】
各ユーザを識別するステップと、
該ユーザの識別に基づいて、前記メモリに格納された前記少なくとも一つのカスタム階層の、少なくとも一つの選択された定義を提供するステップと
をさらに包含する、請求項２２に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オンライン分析処理（ＯＬＡＰ）構造に関する。特に、あるユーザが、その他のユーザの構造の現状の定義に影響を与えない個別の方法で、構造の定義変更を可能とするＯＬＡＰ構造におけるカスタム階層を生成するシステムおよび方法に関する。
【背景技術】
【０００２】
ビジネスの業績および運営に関するデータは、戦略、価格、部署構成などについて、経営者が十分な情報に基づく決定を下すためには不可欠なものとなってきた。データベースフォーマットに保存されることが増えてきたこのデータは、何らかのクエリを入力して、データ全体をソートし、そのクエリの基準に一致するデータに基づく回答を得ることでアクセス可能となる。データベースは、多くの場合ＯＬＡＰキューブと称され、データベースに保存されるデータの多次元性を反映している。
【０００３】
アナリストは、ＯＬＡＰキューブに格納されるデータを管理および表示するためにいくつものツールを用いる。これらのツールの一つとして、特定の基準を満たすＯＬＡＰキューブの構成要素を特定するために、事業アナリストの要求に応対するデータサーバーとしての機能を果たすクエリエンジンがある。この機能は、データに基づくビジネス業績について結論を出すことを目的として、アナリストは、ＯＬＡＰキューブに保存されているデータに関する特定の質問に対し、回答を手に入れることができる。
【０００４】
クエリ機能は、ＯＬＡＰキューブの定義が通常静的であるという事実により多少制限される。それは、キューブにおける多様なデータ階層の組織構成をアナリストは変更できないことを意味する。その結果、キューブに含まれるデータのソートおよび表示の選択肢は、キューブの組織に基づいて限定される。所定のプロジェクトのために、特定の方法でデータをソートおよび表示するために、各アナリストの要望に応じてキューブの定義を拡大することは、困難であり、多大な時間を必要とし、そして費用が掛かる。
【０００５】
各アナリストが、データ処理を実行し、およびアナリストのビジネス目標に応じた分析を実行するために、所定のＯＬＡＰキューブからのカスタムデータ定義、または階層を作成するシステムおよび方法が、当技術分野では必要とされている。
【発明の開示】
【課題を解決するための手段】
【０００６】
（発明の概要）
本発明によって、（Ｎ＋Ｑ）次元カスタムクエリを送信すること、およびＮ次元ネイティブＯＬＡＰキューブへの送信のために（Ｎ＋Ｑ）次元カスタムクエリをＮ次元クエリに変換することにより、データの（Ｎ＋Ｑ）次元をＮ次元ネイティブＯＬＡＰキューブで分析することが可能となる。Ｎ次元クエリのＮ次元結果が提供され、（Ｎ＋Ｑ）次元カスタムクエリの（Ｎ＋Ｑ）次元結果に変換される。（Ｎ＋Ｑ）次元結果は、次に（Ｎ＋Ｑ）次元カスタムクエリへの回答として提供される。
【発明を実施するための最良の形態】
【０００７】
（詳細な説明）
図１は、本発明の典型的な実施形態に従い、カスタム階層を作成するためのシステム１０の一般的な構造および操作を示す図である。本システムは、多数のネイティブ階層次元（Ｎ次元データ）に格納されたデータで一杯のネイティブＯＬＡＰキューブ１２が提供されると仮定する。ネイティブＯＬＡＰキューブ１２はまた、キューブ１２に格納されたデータについて、送信されるクエリの処理能力を有するデータベースサーバを含む。システム１０はまた、アプリケーションソフトウェア１４を含む。このアプリケーションソフトウェア１４は、ネイティブＯＬＡＰキューブ１２に送信するクエリをユーザが作成すること、および、ネイティブＯＬＡＰキューブ１２から返されるデータをユーザが表示することを可能とする。その表示は、ユーザのデータ分析を補助するため、グラフィックあるいはその他のビジュアルなフォーマットであることが多い。既存システムにおいては、アプリケーションソフトウェア１４は、上述の操作のために、ネイティブＯＬＡＰキューブ１２に直接結合される。しかし、システム１０は、アプリケーションソフトウェア１４とネイティブＯＬＡＰキューブ１２間をロジックで結合するカスタム階層ソフトウェア１６をさらに含む。カスタム階層ソフトウェア１６は、アプリケーションソフトウェア１４に新規機能の組み込みを可能とし、これによって、ユーザは、クエリを送信すること、および、ネイティブＯＬＡＰキューブ１２の構造に定義されていないデータのカスタム階層／次元に関連する結果を表示することが可能となる。
【０００８】
操作の際、ボックス２０に示されるように、ユーザは所望のクエリを入力する。クエリは、ネイティブＯＬＡＰキューブ１２により定義されていないデータの次元に関連する。それゆえ、そのクエリは、（Ｎ＋Ｑ）次元クエリと称される。カスタム階層ソフトウェア１６は、ネイティブＯＬＡＰキューブ１２への送信のために、ボックス２２に示されるように、（Ｎ＋Ｑ）次元クエリをＮ次元クエリに変換する。Ｑがゼロである場合（すなわちユーザが単にＮ次元クエリを送信する場合）は、カスタム階層ソフトウェア１６は、単にネイティブＯＬＡＰキューブ１２へクエリを転送することに留意されたい。ネイティブＯＬＡＰキューブ１２は、Ｎ次元クエリを通常の方法で処理し、Ｎ次元クエリ結果をカスタム階層ソフトウェア１６へ返す。カスタム階層ソフトウェア１６は、ボックス２４に示されるように、Ｎ次元クエリ結果を（Ｎ＋Ｑ）次元クエリ結果へ変換する。この結果は、ボックス２６に示されるように、ユーザが（Ｎ＋Ｑ）次元クエリ結果を表示できるアプリケーションソフト１４に転送される。ユーザによるクエリの入力および結果の表示は、ネイティブキューブが実際に（Ｎ＋Ｑ）次元であるかのように実行される。つまり、ユーザにとって（Ｎ＋Ｑ）次元クエリおよび結果の変換は途切れなく行われる。
【０００９】
システム１０は、（Ｎ＋Ｑ）次元クエリの送信のために、各ユーザがアクセス可能なカスタム階層／次元の格納用カスタム階層ストレージ２８をさらに備える。カスタム階層ストレージ２８は、各ユーザが利用できるカスタム階層の定義を保存するための保管場所としての機能を果たす。いくつかの実施形態において、これらの定義は、アプリケーションソフトウェア１４およびカスタム階層ソフトウェア１６の機能の一部として、ユーザに動的に拡張および更新されることができる。さらに、いくつかの実施形態において、システム１０は、ユーザログインまたは他の機構などにより、個々のユーザを認識する能力を含み得る。これは、適切な優先およびカスタム階層の組み合わせ（例として、カスタム階層ストレージ２８に格納される）が、個々の基準でユーザに提供されるようにするためである。
【００１０】
システム１０はまた、アプリケーションソフトウェア１４により送信されるメタデータ要求に応答可能である。例えば、アプリケーションソフトウェア１４を使って、どの次元またはメンバーが、分析に応じることができるかを質問する場合、カスタム階層ソフトウェア１６は、カスタム（Ｎ＋Ｑ）次元クエリからＮ次元ネイティブクエリへの変換と同一原理を利用して、クエリが（Ｎ＋Ｑ）次元であるかのように、質問に回答することができる。
【００１１】
図２〜４は、本発明のシステムが使用される典型的なシナリオを示す流れ図である。３つの実施例全てが、下記の通り定義される共通のネイティブキューブを有する環境で設定される。
【００１２】
【表１】
2007513428.tif 000003
（実施例１（図２））
図２の流れ図で示される本例において、ユーザは、選択されたマーケット（「家具」および「食料品」）に関連する適時性データを表示するためにクエリを送信する。特に、クエリは、適時性データが出力表示の行（フォアグラウンド軸）に表示されるよう指定し、マーケットによりグループ化され、このグループ化もその行（同一フォアグラウンド軸）に表示される。
【００１３】
図２のステップ３０に示されるように、ユーザにより送信されるカスタムクエリは次の通り表現される。行に［マーケット＝家具、食料品］、行に［適時性＝１．．５］を表示。選択されるネイティブの会社階層のメンバーは、「家具」および「食料品」であり、それらのメンバーは、リーフレベルメンバーそれ自体ではなくリーフレベルメンバー（会社）のグループである。カスタム階層は「適時性」であり、これは最初に定義されたネイティブキューブにおける階層ではなく、属性である。カスタム階層ソフトウェアは、そのクエリをネイティブクエリに変換するが、算出メンバーはネイティブ階層における行軸に置かれている（行上）。同様に、カスタム「適時性」階層は、さらにドリル（ｄｒｉｌｌ）される能力を保持する。これは、従来技術システムのクエリに応答して、提供される単なるレンダリングされた算出メンバーと異なる。結果として、クエリを送信するユーザは、以下のフォーマット（しかし、ネイティブキューブ自体の定義は変わらないままである）を有するものとして表示する。ここで、キューブの新たな次元は斜字体で示される。
【００１４】
【表２】
2007513428.tif 000004
ユーザによって送信されるクエリに回答するために、カスタム階層ソフトウェアは、図２のステップ３２に示されるように、カスタムクエリをネイティブクエリに変換するために多段階のプロセスを使用する。特に、特定の例として、ステップ３３で１と設定されるメンバー数、ステップ３４で「家具」（選択される最初のマーケット）と設定される「マーケット」、およびステップ３６で１（最初の適時性の値）と設定される「適時性」から、プロセスが開始される。次いで、特定のメンバー数に対する算出メンバーは、ステップ３８で示されるように、選択された適時性を有する会社で、選択されたマーケットから派生する会社と交差する会社を集計することにより判断される。この判断は、決定ステップ４０およびインクリメントステップ４２によって示されるように、適時性の全ての値（１〜５）に対して継続され、メンバー数をインクリメントしてそれぞれの判断を行う。選択されたマーケットの適時性の全ての値が判断された時点で、決定ステップ４４およびインクリメントステップ４６で示されるように、マーケット選択がインクリメントされ、そのプロセスが繰り返される。算出メンバーの全てが判断された後、ステップ４８に示されるように、カスタムクエリにより要求されるフォーマットへの変換のために、ネイティブクエリはそれらのメンバー（１〜Ｎ）をカスタム階層ソフトウェアに返却する。
【００１５】
この例において、ユーザによって送信されるカスタムクエリの結果は下記の通りである（空白セルは基準に対応するデータがないことを示す）。
【００１６】
【表３】
2007513428.tif 000005
（実施例２（図３））
図３の流れ図で示される本例において、ユーザは、選択されたマーケット（「バイオテクノロジー」および「石炭」）を適時性データと関連させ、財務健全性（Ａ＋、Ａ＋＋）によりグループ化したものを表示するためにクエリを送信する。特に、クエリは、適時性データが出力表示の行（フォアグラウンド軸）に表示されることを指定し、列（異なるフォアグラウンド軸）上でマーケットによりグループ化され、行（同一フォアグラウンド軸）上の財務健全性によりさらにグループ化される。
【００１７】
図３のステップ５０に示されるように、ユーザにより送信されるカスタムクエリは、次の通り表現される。すなわち、列に［マーケット＝バイオテクノロジー、石炭］、行に［適時性＝１．．５］を表示、行で［財務健全性＝Ａ＋＋、Ａ＋］によってグループ化されている。カスタム階層ソフトウェアは、このクエリをネイティブクエリに変換する。本シナリオにおいて、算出メンバーは各行に作成される。各メンバーに対する式は、財務健全性選択および適時性選択の両方のためのロジックを含む。それらメンバーは、そのカスタム階層がその財務健全性階層と同一軸上に存在するため、その財務健全性階層にあると定義される。結果として、クエリを送信するユーザは、以下のフォーマットを有するかのようにキューブを表示させる（しかし、ネイティブキューブ自体の定義は変わらないままである）。
【００１８】
【表４】
2007513428.tif 000006
ユーザにより送信されるクエリに回答するために、カスタム階層ソフトウェアは、図３のステップ５２に示されるように、カスタムクエリをネイティブクエリに変換する。特に、特定の例として、ステップ５３で１と設定されるメンバー数、ステップ５５でＡ＋＋（選択される最初の値）と設定される「財務健全性」、ステップ５６で１（最初の適時性の値）と設定される「適時性」から始まるプロセスが開始される。各メンバー数は、ネイティブＯＬＡＰサーバーにより、算出される行に特定される。特定のメンバー数のための算出メンバーは、次に、ステップ５８に示されるように、各選択されたマーケットの派生である会社と交差する適時性を選択した会社と組み合わされた、選択された財務健全性をもつ会社を集計することにより判断される。この判断は、決定ステップ６０およびインクリメントステップ６２で示されるように、適時性（１〜５）の全ての値に対して継続され、メンバー数をインクリメントしてそれぞれの判断を行う。各選択されたマーケットにおける選択された財務健全性に対し適時性の全ての値が検討された時点で、決定ステップ６４およびインクリメントステップ６６で示されるように、財務健全性選択がインクリメントされ、プロセスは選択された適時性の値のためにまた繰り返される。最終的に、算出メンバーは、各マーケットにおける全ての選択された財務健全性の値に対して判断された時点で、カスタムクエリにより要求されるフォーマットへの変換のために、ネイティブクエリはこれらメンバー（１〜Ｎ）をカスタム階層ソフトウェアに返す。算出メンバーを評価するために実行される式が、表の各個別セルに対するデータではなく、行のヘッダーを表すため、各算出メンバーはデータの全体の行に対するセル情報を含む。
【００１９】
本例において、ユーザより送信されるカスタムクエリの結果は次の通りである（空白セルは基準に対応するデータがないことを示す）。
【００２０】
【表５】
2007513428.tif 000007
（実施例３（図４））
図４の流れ図に示される本例において、ユーザは、選択されたマーケット（バイオテクノロジーおよび石炭）と関連する適時性データを表示するためにクエリを送信する。特に、クエリは、適時性データは、マーケットによりソートされ、出力表示の行（フォアグラウンド軸）に表示されるように指定し、マーケットは列（異なるフォアグラウンド軸）に表示される。したがって、カスタム階層（適時性）は単独で軸上に存在する。
【００２１】
図４のステップ８０で示されるように、ユーザにより送信されるカスタムクエリは次の通り表現される。列に［マーケット＝バイオテクノロジー、石炭］、行に［適時性＝１．．５］を表示。カスタム階層ソフトウェアは、このクエリをネイティブクエリに変換し、結果として、ユーザは、以下のフォーマットを有するものとして、キューブを表示させる（しかし、ネイティブキューブ自体の定義は変化しないままである）。
【００２２】
【表６】
2007513428.tif 000008
本シナリオにおいて、算出メンバーは各行に作成される。しかし、ネイティブ階層は、カスタム階層の算出メンバーを置くカスタム階層と同一の軸に存在しない。従って、決定ステップ８２に示されるように、ネイティブ階層が、カスタム階層フォアグラウンド軸に移動可能なバックグラウンド軸に存在するか否かが判断されなければならない。上記のように利用可能なネイティブ階層が存在する場合、それは、ステップ８４に示されるように、カスタム階層が存在する軸（本例においては行）に、バックグラウンド軸から移動される。例えば、特定の例において、単にカスタム階層の算出メンバーを置く構造を提供することを目的として、その「Ａｌｌ」メンバーのみが選択されている状態で、財務健全性階層が行に移動される。本例において、「Ａｌｌ」メンバーが選択されるのは、財務健全性次元の「Ａｌｌ」メンバーがバックグラウンド軸上に選択されている（すなわちカスタムクエリにおいて指定された財務健全性基準は存在しない）ためである。この移動が行われた時点で、ネイティブクエリを作成するプロセスは、図４のステップ８６により示されるように、図３（ステップ５２が起点）について上記に記載されるものと同様である。特別な変換が行われなかった場合、結果として得られるカスタムクエリは以下の通りである。
【００２３】
【表７】
2007513428.tif 000009
上記結果が入手される時点で、カスタム階層ソフトウェアは、行選択から財務健全性階層の「Ａｌｌ」メンバーを取り除く追加のステップを実行するため、財務健全性階層がフォアグラウンド軸（ここでは行）を出てバックグラウンドへ効果的に移動する。これは図４のステップ８８に示される。従って、カスタムクエリの最終結果は次の通りとなる。
【００２４】
【表８】
2007513428.tif 000010
カスタム階層軸に移動するネイティブ階層がその他に存在しない場合（すなわち、特定の例として、財務健全性階層が存在しない場合）、第二の方法が使用される。本代替方法において、ステップ９０に示されるように、カスタム階層および選択されたネイティブ階層（本例においてマーケットによってグループ化される会社）が、それらの選択が組み合わされた状態で（すなわち、選択されたメンバーの全ての組み合わせがリスト化される）、同一軸に置かれる。したがってネイティブクエリは、カスタムクエリより一つ少ない軸を有する。本ステップが行われると、カスタム階層（「適時性」）およびネイティブ階層（「会社階層」）が同一軸上に存在するため、カスタムクエリからネイティブクエリへの変換は、図２（ステップ３２が起点）について上記で記載されたように進む。これは図４のステップ９２で示される。本クエリは次の結果をもたらす。
【００２５】
【表９】
2007513428.tif 000011
クエリの実行が完了する時点で、結果は、ステップ９４に示されるように、結果が上記表８と全く同じようになるように、追加軸（本例においては行）を含むカスタム階層ソフトウェアにより変換される。この変換は、ネイティブクエリ結果の各セルが、カスタムクエリのセルと１対１対応の関係を有するために、特に困難ではない。両クエリは、同じセルの数で同一結果を回答する。唯一の違いはセルの構成に存在するが、これはカスタム階層ソフトウェアによって操作されることができる。
【００２６】
上記の実施例は、ネイティブＯＬＡＰキューブで階層として定義されていないカスタム階層として、データの新規次元を検証することが、本発明で可能なことを示している。カスタム階層は、例えば、ネイティブ階層のメンバーの属性、ネイティブ階層におけるメンバーのグループ、またはネイティブ階層のメンバーに関連する指標を含む、ネイティブＯＬＡＰキューブに保存されるいかなるデータにも基づくことができる。カスタム階層のメンバーは、ネイティブＯＬＡＰキューブからのメタデータを利用するいかなる式に基づくこともできる。カスタム階層ソフトウェアは、カスタム階層に関連する全クエリを、ネイティブＯＬＡＰサーバーによって実行されるネイティブクエリに変換することができるので、カスタム階層は、さらにドリル可能なように作成される。一つまたは複数のカスタム階層定義も、後で使用するために記録および保存される。結果として、ネイティブＯＬＡＰキューブ定義を修正する作業で、キューブ全体の保守システムおよび人員に負担をかけることなく、アナリストは、自分の分析のために、データのカスタマイズされた表示および構造を形成することができる。
【００２７】
本発明について、好適な実施形態を参照しながら説明してきたが、本発明の精神と範囲から逸脱することなく、形式および詳細において変更が行われてもよいことは、当業者なら理解される。
【図面の簡単な説明】
【００２８】
【図１】図１は、本発明の典型的な実施例に従い、カスタム階層を作成するためのシステムの一般的な構造および操作を示す図である。
【図２】図２は、本発明のシステムが使用される典型的なシナリオを示す流れ図である。
【図３】図３は、本発明のシステムが使用される典型的なシナリオを示す流れ図である。
【図４】図４は、本発明のシステムが使用される典型的なシナリオを示す流れ図である。
【図１】
2007513428.tif 000012
【図２】
2007513428.tif 000013
【図３】
2007513428.tif 000014
【図４】
2007513428.tif 000015
【国際調査報告】
2007513428.tif 000016