(57)【特許請求の範囲】
【請求項１】
複数のデータノードを有する階層型データ構造に対応するビューを提供するコンピュータシステムであって、
プロセッサと、
前記プロセッサに通信接続されたメモリと
を備え、前記メモリは、前記プロセッサにより実行可能な命令を有し、前記命令は、
所定のメトリックスに従って前記データノードの１つ又は複数に評価を割り当てる評価コンポーネントを提供する命令であって、前記メトリックスは、ユーザが前記データノードにアクセスするアクティビティに関連付けられ、アクセスされた時刻、アクセスされた目的、アクセスされる頻度、およびアクセスした前記ユーザのうちの少なくとも１つを含む、評価コンポーネントを提供する命令と、
データノードに割り当てた評価が所定の基準を満たす１または複数のデータノードを判定して選択する選択コンポーネントを提供する命令と、
前記選択されたデータノードを表すビューを生成して提供する記述コンポーネントを提供する命令であって、前記ビューは、各選択されたデータノードについて、前記階層型データ構造のルートノードから当該選択されたデータノードへのパスを構成するデータノードのうち、所定の基準を満たすデータノードを表す記述をつなぎ合わせることによって生成した名前を出力する記述コンポーネントを提供する命令であって、前記データノードを表す記述は、当該データノードに関連付けられているフォルダ又はファイルのメタデータを使用して生成される、記述コンポーネントを提供する命令と
を含むことを特徴とするコンピュータシステム。
【請求項２】
前記ビューは１次元ビューであることを特徴とする請求項１に記載のコンピュータシステム。
【請求項３】
前記データ構造は、オペレーティングシステムとデータリポジトリのうちの少なくとも１つに関連付けられていることを特徴とする請求項１に記載のコンピュータシステム。
【請求項４】
前記選択されたデータノードは、プレイリストに関連付けられていることを特徴とする請求項１に記載のコンピュータシステム。
【請求項５】
前記評価は、ナンバー、イメージデータ、オーディオデータ、配色、又は文字列のうちの少なくとも１つとして提示されることを特徴とする請求項１に記載のコンピュータシステム。
【請求項６】
前記１つ又は複数のデータノードは、第１のコンピューティングシステムに集中して配置されているか、前記第１のコンピューティングシステムから離れて配置されているか、又は複数のコンピューティングシステムに分散されて配置されているかの少なくとも１つであることを特徴とする請求項１に記載のコンピュータシステム。
【請求項７】
前記選択されたデータノードを表す名前は、対応するデータノードへのナビゲーションを可能とするハイパーリンクが設定されることを特徴とする請求項１に記載のコンピュータシステム。
【請求項８】
前記選択されたデータノードは、最高の評価を有することを特徴とする請求項１に記載のコンピュータシステム。
【請求項９】
請求項１に記載の前記プロセッサにより実行可能な命令を格納することを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１０】
複数のデータノードを有する階層型データ構造に対応するビューを提供するコンピュータシステムであって、
プロセッサと、
前記プロセッサに通信接続されたメモリと
を備え、前記メモリは、前記プロセッサにより実行可能な命令を有し、前記命令は、
１つ又は複数の所定のメトリックスに従って前記データノードのうちの１つ又は複数に評価を割り当てる評価コンポーネントを提供する命令であって、前記メトリックスは、ユーザが前記データノードにアクセスするアクティビティに関連付けられ、アクセスされた時刻、アクセスされた目的、アクセスされる頻度、およびアクセスした前記ユーザのうちの少なくとも１つを含む、評価コンポーネントを提供する命令と、
データノードに割り当てた評価が所定の基準を満たす１つ又は複数のデータノードを判定して選択する選択コンポーネントを提供する命令と、
各選択されたデータノードについて、前記階層型データ構造のルートノードから当該選択されたデータノードへのパスを構成するデータノードのうち、所定の基準を満たすデータノードを表す記述をつなぎ合わせることによって生成した名前を出力するビューを生成して提供する命名コンポーネントを提供する命令であって、前記データノードを表す記述は、当該データノードに関連付けられているフォルダ又はファイルのメタデータを使用して生成される、命名コンポーネントを提供する命令と
を含むことを特徴とするコンピュータシステム。
【請求項１１】
前記ビューは、１次元ビューであることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１２】
前記データ構造は、オペレーティングシステム又はデータリポジトリのうちの少なくとも１つに関連付けられていることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１３】
前記評価は、ナンバー、イメージデータ、オーディオデータ、配色、又は文字列のうちの少なくとも１つとして提示されることを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１４】
前記選択されたデータノードは、データパスに関連付けられ、当該データパスは、各々が１つ又は複数のノード指定を有する複数のデータノードによって定義され、
前記命名コンポーネントは、前記１つ又は複数のノード指定を処理して、前記ビューを生成することを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１５】
前記１つ又は複数の名前は、位置データ、相対的時間、最新性、再帰性、又は分類型のうちの少なくとも１つを表すメタデータ情報を含むことを特徴とする請求項１０に記載のコンピュータシステム。
【請求項１６】
コンピュータに、複数のノードを有する階層型データ構造に対応するビューを提供する方法を実行させるためのコンピュータ実行可能命令を格納するコンピュータ読み取り可能な記録媒体であって、前記方法は、
複数のノードを有する階層型データ構造を受信するステップと、
１つ又は複数の所定のメトリックスに従って前記複数のノードの各々に評価を割り当てるステップであって、前記メトリックスは、ユーザが前記ノードにアクセスするアクティビティに関連付けられ、アクセスされた時刻、アクセスされた目的、アクセスされる頻度、およびアクセスした前記ユーザのうちの少なくとも１つを含む、ステップと、
ノードに割り当てた評価が所定の基準を満たす１つ又は複数のノードを判定して選択するステップと、
前記１つ又は複数の選択されたノードに関連付けられているフォルダ又はファイルのメタデータを抽出するステップと、
前記１つ又は複数の選択されたノードの各々に対して、前記階層型データ構造のルートノードから当該選択されたノードへのパスを構成するノードのうち、所定の基準を満たすノードを表す記述をつなぎ合わせることによって名前を生成するステップであって、前記ノードを表す記述は、前記メタデータを使用して生成される、ステップと、
前記生成した名前を出力するビューを生成して提供するステップと
を含むことを特徴とするコンピュータ読み取り可能な記録媒体。
【請求項１７】
前記ビューは１次元ビューであることを特徴とする請求項１６に記載のコンピュータ読み取り可能な記録媒体。
【請求項１８】
前記メタデータは、ナンバー、イメージデータ、オーディオデータ、文字列、又は単語のうちの少なくとも１つのフォーマットであることを特徴とする請求項１６に記載のコンピュータ読み取り可能な記録媒体。
【請求項１９】
前記名前は、前記複数のノードのうちの各ノードに関連付けられたフォルダ名又はファイル名のうちの少なくとも１つを使用して生成されることを特徴とする請求項１６に記載のコンピュータ読み取り可能な記録媒体。
【請求項２０】
前記選択されたノードに関連付けられたドキュメントのテキストを分析して、前記ドキュメントのテキスト内で１つの言葉が使用される頻度を判定するステップと、
前記判定した頻度に基づいて前記選択されたノードの名前を生成するステップと
を更に含むことを特徴とする請求項１６に記載のコンピュータ読み取り可能な記録媒体。
【請求項２１】
複数のノードを有する階層型データ構造に対応するビューを提供するコンピュータシステムであって、
プロセッサと、
前記プロセッサに通信接続されたメモリと
を備え、前記メモリは、前記プロセッサにより実行可能な命令を有し、前記命令は、
複数のノードを有する階層型データ構造を受信する手段を提供する命令と、
１つ又は複数の所定のメトリックスに従って前記複数のノードの各々に対して評価を割り当てる手段であって、前記メトリックスは、ユーザが前記ノードにアクセスするアクティビティに関連付けられ、アクセスされた時刻、アクセスされた目的、アクセスされる頻度、およびアクセスした前記ユーザのうちの少なくとも１つを含む、手段を提供する命令と、
ノードに割り当てた評価が所定の基準を満たす１つ又は複数のノードを判定して選択する手段を提供する命令と、
前記１つ又は複数の選択されたノードに関連付けられているフォルダ又はファイルのメタデータを抽出する手段を提供する命令と、
前記１つ又は複数の選択されたノードの各々に対して、前記階層型データ構造のルートノードから当該選択されたノードへのパスを構成するノードのうち、所定の基準を満たすノードを表す記述をつなぎ合わせることによって名前を生成し、当該生成した名前を出力するビューを生成して提供する手段を提供する命令であって、前記ノードを表す記述は、前記メタデータを使用して生成される、手段を提供する命令と
を含むことを特徴とするコンピュータシステム。
【請求項２２】
前記メタデータは、ナンバー、イメージデータ、オーディオデータ、文字列、又は単語のうちの少なくとも１つのフォーマットであることを特徴とする請求項２１に記載のコンピュータシステム。
【請求項２３】
前記名前は、位置データ、相対的時間、最新性、再帰性、又は分類型のうちの少なくとも１つを表すメタデータ情報を含むことを特徴とする請求項２１に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータ記憶構造に関し、より具体的には、そうしたデータ構造をより分かりやすい方法(meaningful way)で表すためのメカニズムに関する。
【背景技術】
【０００２】
既存のネットワークファイルの共有は、入れ子構造のフォルダおよびファイルによって表される階層記憶メカニズムを利用しているが、これはナビゲーションに関する問題を生み出す。共有コンテンツの編成は、異なる共有間、ならびに同一の共有のサブセクションを管理する個々人の間で不均一である。この不均一性を考慮すると、効率的なナビゲーションにとっては、共有に詳しく精通することがしばしば必要とされる。さらに面倒なことに、フォルダの命名規則は、共有を使用するさまざまな人々によって異なる場合が多い。共有はアーカイブとして有用だが、その副作用として、より差し迫って関連性の高い何かを探している人は、しばしば膨大な数のファイルおよびフォルダをかき分けて進まなければならない。
【０００３】
コンピュータネットワークの共有用の新しいナビゲーション方法は、特定の人物に関連付けられた（最近その人物によって開かれた、または生成された）より新しいファイルまたはより関連性の高いファイルを表示するなど、共有スペースのより分かりやすいビューを提示するために共有アクティビティ上で収集されたデータを利用する。このタイプの改良をもってしても、プロジェクト名が知られている場合でさえ、共有スペースにおけるナビゲーションは困難である。フォルダ階層およびファイル用にさまざまな命名規則を使用する複数の人々によって維持されるサブセクションを有する複雑なフォルダ構造内に多数のファイルが配置されている場合が多い。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
必要とされているのは、分かりやすい命名を利用してそうした階層構造を表示するための改良されたメカニズムである。
【課題を解決するための手段】
【０００５】
以降では、本発明のいくつかの態様について基本的な理解を提供するために本発明の簡略化した要約を提示する。この要約は、本発明を網羅的に概観したものではない。また本発明の鍵となる／重要な要素を明らかにしたり、本発明の範囲を画定したりすることを意図するものではない。後述するさらに詳細な説明への前置きとして本発明のいくつかの発想を簡略化した形態で提示することが唯一の目的である。
【０００６】
本明細書において開示および特許請求される本発明は、その一態様において、階層型データ構造に関連付けられたユーザのアクティビティを観察し、ユーザがよりナビゲートおよび理解しやすいファイル名およびフォルダ名または他の文字列データから得られる分かりやすい名前を生成するシステムを含む。本発明は、収集された共有アクティビティデータに基づいてプロジェクトビューを生成することによって、そうしたスペースのブラウジングを簡略化する。一般にデータベースは、さらに異なるフィールドに基づいて異なるタイプの階層を有することができる。ディレクトリ構造におけるフォルダは、プロジェクトが表示されたものである。プロジェクトについて指定するファイル、プロジェクトを表すイメージ、またはプロジェクトにとってより固有な他の何らかのデータなど、さらなるフィールドが存在する場合もある。これらのフィールドを参照することによって、分かりやすい命名プロセスをより洗練することができる。いくつかのサブディレクトリは、別個のエンティティとしてのプロジェクトではなく、プロジェクト内におけるファイルの１つの集合とすることができ、これを使用して１つまたは複数の分かりやすい名前を生成することができる。名前の生成を容易にするために、任意の形態のメタデータを使用することができる。新近性、再帰性（同じデータの場所に戻ってくるユーザの数）、および（２つのアイテムが同じ時点で開かれているおよび／または編集されている状況が発生している時間に関連付けられた）分類タイプなど、多くのタイプのメトリックス(metrics)を採用することができるが、これらには限定されない。複雑な問合せの結果として生成されるフラットなビューは、たとえばオペレーティングシステム内のデータ構造を迅速に理解およびナビゲートするための重要な手段を提供する。これらのビューは、オペレーティングシステムの一部である豊富なデータベースに問合せを行った結果として生じることができる。
【０００７】
これをサポートするものとして、このシステムは、データ構造の各ノードに評価メトリックスを適用することを容易にする評価コンポーネントを含む。この評価プロセスは、複数の所定の状況に応答して実行することができる。このシステムは、命名プロセス用の１つまたは複数のノードを選択する選択コンポーネントも含む。命名コンポーネントは、選択されたノード情報を選択コンポーネントから受信して処理し、所与のユーザのための１つまたは複数のノード用の（１つまたは複数の）名前を生成する。命名コンポーネントの出力は、データ構造用の１つまたは複数の分かりやすい名前の形態を取るフラット化された表示である。この出力は、単にさまざまなノードから生成された分かりやすい名前の表形式のリストとすることができる。ユーザは、構造の詳しい知識を必要とせずにそうした共有スペースのより直観的なビューを提供され、それによってユーザは、名前または名前の文字列を迅速に検討および選択して、希望のデータの場所へとナビゲートすることができる。使用状況データを収集するために、所与の共有上のアクティビティをモニタするためのコンポーネントが使用される。一実施態様では、複雑な階層構造をフラット化する過程、ならびにフラット化されたスペース内で分かりやすい名前を生成する過程でアクティビティデータが使用される。
【０００８】
本発明の別の態様では、さまざまなユーザのアクティビティを自動化し、そこから学習するために、人口知能が提供される。さらに自動化は、データ型、および他の所定のユーザ定義のメトリックス、ならびに学習されたメトリックスに基づくことができる。
【０００９】
前述の目的および関連する目的を達成するため、本明細書では後述の説明および添付の図面と併せて本発明の特定の例示的な態様について説明する。しかしこれらの態様は、本発明の原理を採用できるさまざまな方法のごく一部を示したものであり、本発明はそうした態様およびその均等物をすべて含むことを意図している。本発明の他の利点および新奇な特徴は、後述する本発明の詳細な説明を図面と併せて考察すれば明らかになるであろう。
【発明を実施するための最良の形態】
【００１０】
図面を参照して本発明について説明する。図面では、同様の要素を指すために全体を通して同様の参照番号が使用されている。以降の説明では、説明上の目的から、本発明の完全な理解を提供するために多くの特定の詳細について述べる。しかし、これらの特定の詳細を伴わずに本発明を実施できることは明らかである。他の例では、本発明の説明を容易にするために、よく知られた構造およびデバイスがブロック図の形態で示されている。
【００１１】
本出願で使用される「コンポーネント」および「システム」という用語は、ハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアなど、コンピュータ関連のエンティティを指すことを意図している。たとえばコンポーネントは、プロセッサ上で実行されているプロセス、プロセッサ、オブジェクト、実行ファイル、実行スレッド、プログラム、および／またはコンピュータとすることができるが、これらには限定されない。実例としては、サーバ上で実行されているアプリケーションおよびそのサーバの双方をコンポーネントとすることができる。１つまたは複数のコンポーネントは１つのプロセスおよび／または実行スレッド内に常駐することができ、１つのコンポーネントは１台のコンピュータに集中させるか、および／または複数のコンピュータに分散することができる。
【００１２】
本明細書で使用される「推論」という用語は、一般にイベントおよび／またはデータを介して取り込まれた一式の観察からシステム、環境、および／またはユーザの状態を論理的に考えるまたは推測するプロセスを指す。たとえば推論を採用して特定のコンテキストまたはアクションを識別することができ、あるいは状態に関する確率分布を生成することもできる。推論とは確率的である、すなわちデータおよびイベントの考察に基づいて興味ある状態に関する確率分布を算出することであると言うことができる。また推論とは、一式のイベントおよび／またはデータからより高位のイベントを構成するために採用する技術を指す場合もある。こうした推論の結果、複数のイベントが時間的に密接に関連しているか否か、イベントおよびデータが１つまたは複数のイベントソースおよびデータソースに由来するか否かを問わず、一式の観察されたイベントおよび／または蓄積されたイベントデータから新たなイベントまたはアクションが構築される。
【００１３】
次いで図１を参照すると、本発明による命名システム１００が示されている。本発明に従ってフラット化され命名される従来の階層型データ構造１０２の部分的な見本が提供されている。構造１０２は、ノード１、・・・、ノードＮで表される複数の親ノードを含み、そのそれぞれは、必須ではないが、そこから分岐する１つまたは複数の子ノードを有することができる。これを一般的に説明するものとして、第１の親ノード１０４は、（ノード１１とも表される）第１の子ノード１０６を有し、この第１の子ノード１０６は、（ノード１１１とも表される）第２の子ノード１０８にとっての親ノードでもある。
【００１４】
構造１０２の各ノードには評価証印(valuation indicia)１１０が割り当てられ、これは（第１の親ノード１０４用にはＶ１と表され、第１の親ノード１０４の１つの可能なパスの子ノード用にはＶ１１、Ｖ１１１、・・・と表され）、最終的にそのノードへのパス用の命名に至る上で使用するためのそのノードの重要性を示す何らかの表示を提供する。こうした評価証印は、複数の異なる所定の基準に従って得られる。たとえばいくつか例を挙げると、そうした基準は、ノードが生成された時刻、アクセスされた時刻、修正された時刻、そのノードに関連付けられたデータ用にコピープロセスが実行された時刻、そのノードがアクセスされる頻度、一意のユーザの数、およびそのノードに関連付けられたデータのタイプなどを含むことができる。いずれにしても、いったん評価が決定されてノードに割り当てられると、分かりやすい名前の生成に備えてノードの選択を行うことができる。
【００１５】
これをサポートするものとして、システム１００は、データ構造１０２の各ノードに評価証印１１０を適用することを容易にする評価コンポーネント１１２を含む。この評価プロセスは、複数の所定の状況に応答して実行することができる。たとえば、データ構造がクライアントコンピュータ上にのみ存在するクライアントコンピュータのコンテキストでは、評価プロセスは、コンピュータの起動後に、またはユーザとコンピュータの対話に応答して実行することができる。あるいは、評価は前のセッションから生じている場合があり、その更新はユーザによる手動の開始に従って行われる。データ構造１０２がリモートデータノードを含む場合、評価プロセスは、ユーザのログインプロセスまたはネットワークに応答して自動的に実行することができる。いずれにしても評価プロセスは、手動で生成されたか自動的に生成されたかを問わず、トリガーイベントに従ってどこかの時点で実行される。前述したように、各ノード用の評価に至る上で複数の基準を使用することができ、その基準は評価コンポーネント１１２を使用して採用することができる。
【００１６】
またシステム１００は、命名プロセス用の１つまたは複数のノードを選択する選択コンポーネント１１４も含む。記述コンポーネント１１６は、選択されたノード情報を選択コンポーネント１１４から受信して処理し、所与のユーザのための１つまたは複数のノード用の記述を生成する。記述コンポーネント１１６の出力１１８は、データ構造１０２用の分かりやすい記述の形態を取るフラット化された表示である。この出力１１８は、単にさまざまなノードから生成された記述の表形式のリストとすることができ、そのそれぞれまたはすべては、対応するデータノードへのナビゲーションを容易にするためにハイパーリンクすることができる。したがってユーザは、記述または記述の文字列を迅速に検討および選択して、希望のデータの場所へと迅速にナビゲートすることができる。評価コンポーネント１１２、選択コンポーネント１１４、および記述コンポーネント１１６を組み合わせて、それぞれの機能をすべて実行する単一のコンポーネントにすることができることを当業者なら理解することができる。
【００１７】
次いで図２を参照すると、本発明の評価プロセスのフローチャートが示されている。説明を簡単にするために、本明細書においてたとえばフローチャートの形態で示されている１つまたは複数の方法は、一連の行為として記載および説明されているが、本発明によれば、いくつかの行為は、本明細書で記載および説明したものとは異なる順序で、および／または他の行為と共に発生することができるため、本発明は行為の順序には限定されないことを理解および認識されたい。たとえば方法とは、別の形態として状態図などで相互に関連した一連の状態またはイベントとして表すこともできることを当業者なら理解および認識するであろう。さらに、本発明による方法を実施する上で、説明したすべての行為が必要となるわけではない場合もある。
【００１８】
２００において評価メトリックスが決定され、データ階層の各ノードに割り当てられる。そうした基準は、たとえば生成の時刻、アクセスされた時刻、修正された時刻、データが修正されているかどうか、コピーされた時刻、アクセスの頻度、修正の頻度、一意のユーザの数、そのノードに関連付けられたデータのタイプ、ノードの重み係数、および時刻を含むことができる。２０２では、ノードは希望の評価データに従って選択される。２０４では、選択されたノードのデータを使用して、ユーザへ提示するために分かりやすい記述を生成する。そしてプロセスは、終了ブロックに到達する。
【００１９】
次いで図３を参照すると、階層型ファイル構造３００のより具体的な例として本発明の命名プロセスが示されている。本発明は、観察されたユーザのアクティビティに基づいて階層構造をフラット化して（たとえばリスト、再生リストなどの形態の）簡略化された１次元のビューを提示するための効率的な方法を提供する。図３の例は、ネットワークファイルの共有を利用するというコンテキストで説明されている。コンピュータファイルシステムは、よりデータベース主導型になっており、ファイルシステム内に組み込まれたメタデータを編成する上でソフトウェア設計者にさらに大きな柔軟性を与えている。階層構造内のアクティビティを観察するシステムを使用して、ユーザにとってさらにナビゲートしやすく理解しやすいフラット化された構造の名前が得られる。
【００２０】
図３は、（たとえば新近性およびアクセス頻度に基づくなど）何らかの選択された尺度の値を有する階層型ネットワークファイル共有構造３００の簡略化されたビューを示している。名前生成システム３０２は、使用状況データの収集に使用される所与の共有構造３００上のユーザのアクティビティをモニタする。このシステム３０２は、評価コンポーネント１１２、（図１に関して前述した）選択コンポーネント１１４、および命名コンポーネント３０３を含む。構造３００内のいくつかのノードはアーカイブの目的で使用することができ、その一方で他のノードは最近のアクティビティ用に使用することができる。システム３０２は、データ構造の詳しい知識を必要とせずにそうした共有スペースのより分かりやすいビューをユーザに提供する。複雑な階層構造をフラット化する過程、ならびにフラット化されたスペース内で分かりやすい名前を生成する過程でアクティビティデータが使用される。
【００２１】
図３の実例では、（括弧内の）評価データが生成され、構造３００の各ノードに関連付けられている。たとえばルートノードからの第１のレベルでは、Ａノードが生成され、そこで１３９９の評価と関連付けられる。この例でノード用に大文字を使用しているのは、本発明の一般的な動作を説明するためである点に留意されたい。しかし実際には、システム３０２の出力で明らかなように、文字は各ノードにおいてユーザ定義の名前に置き換えられる。しかしユーザは、この例におけるように、文字のようなノード（すなわちフォルダ、サブフォルダなど）を命名することができ、それに対してやはりフラット化された出力として分かりやすい名前を生成することができることを理解されたい。フラット化された構造用に生成された分かりやすい名前は、単にそのユーザにとってのみ分かりやすい可能性がある。すなわち出力は、たとえ１つまたは複数の言葉の形態でないとしても、所与のユーザにとって意味を持つことができる文字列である。本明細書において後述するように、これは、命名システム３０２を使用して、同じデータ構造３００から異なるユーザ用の異なる分かりやすい名前を有するフラット化された構造を生成できるということを意味することもできる。
【００２２】
引き続き図３において見て取れるように、Ａノードの最も高い評価は、Ａ−ＡＢ−ＡＢＡ−ＡＢＡＡに沿って定義されたパスに関連付けられており、そのそれぞれは１３９９、１３４０、１２９０、および１２３４の評価を有している。したがって、この表示にとってフラット化された出力はＡ−ＡＢＡＡである。同様にＢノードにとっては、最も高い評価はＢ−ＢＡ−ＢＡＡ−ＢＡＡＡに沿ったパスを定義し、そのそれぞれは２７１２、２３７０、２３４５、および２２９０の評価を有している。この表示にとってフラット化された出力はＢ−ＢＡＡＡである。したがって、この小さな構造３００にとってフラット化された出力はＡ−ＡＢＡＡおよびＢ−ＢＡＡＡのリストである。
【００２３】
上記の例における文字列は、特定のしきい値を超えて高く評価されたノードをつなぎ合わせることによって生成された。実際にはその名前は、シカゴ−設計仕様や会社−法務部など、より分かりやすいものへとさらに変換することができ、そのいずれを選択しても、ユーザはすぐにその場所へ導かれるであろう。したがって命名コンポーネント１１６は、最終的には分かりやすい表示用に使用されることになる名前を生成する。
【００２４】
前述したように、同一のデータ構造３００用の分かりやすい名前は、ユーザの希望に応じて生成することができる。第１のユーザは、いかに不可解に見えても自分にとって分かりやすいことを理由に、構造３００をＡ−ＡＢＡＡおよびＢ−ＢＡＡＡとして表すことを選択することができる。しかし、同一の文字によって指定された同一のノードと共に同一の構造３００を「見る」第２のユーザは、異なる方法で表されるフラット化された出力１１８を有することを選択することができる。すなわち第２のユーザは、システム３０２にノードのそれぞれに対するテキストの記述子を生成させることを選択し、結果として自分にとってより分かりやすいことを理由に、シカゴ−設計仕様や会社−法務部に類似した形態で命名された出力を得ることができる。同一のデータ構造を見る第３のユーザは、たとえば英数字の文字列（あるいはユニコード文字および／またはイメージ）と言葉の組合せの形態の自分にとってより分かりやすい命名出力を要求することができる。したがって本発明は、分かりやすい名前を言葉としてのみ出力することに限定されるものではなく、ユーザにとって分かりやすい任意の方法を採用することができる。
【００２５】
これをサポートするものとして、命名システム３０２は、フラット化された出力を文字列ではなく言葉として見ることを希望する第２のユーザ用に、図３に示された文字化されたノードを表す言葉を抽出する機能を提供する。たとえばシステム３０２は、所与の単一の文字のノードまたは複数の文字のノードに関連付けられたフォルダ内のデータを探し、（冠詞、代名詞などを除いて）他の言葉よりも頻繁に使用される１つの言葉（または複数の言葉）を抽出し、その言葉を採用してそのノードについて記述することができる。あるいはシステムは、フォルダ内に存在するより頻繁に使用される複数の言葉を選択し、それらの言葉を第２のユーザに提示し、第２のユーザはそこから１つまたは２つを選択してそのノードについて記述することができる。そしてシステム３０２は、それらのユーザが選択した言葉に基づいて、フラット化された出力１１８をさらに生成することができる。
【００２６】
次いで図４を参照すると、本発明による人口知能を採用する命名システム４００が示されている。本発明は、（たとえば選択および名前生成に関連して）本発明のさまざまな態様を実行するためにさまざまな人口知能ベースのスキームを採用することができる。たとえば、どんなタイプの分かりやすい命名スキームを使用するかを決定するためのプロセスは、自動的な分類子システムおよびプロセス４０２を介して容易に行うことができる。さらに、データ構造１０２がユーザのコンピュータに完全に集中しておらず、複数の場所に分散したデータである場合、分類子４０２を採用して、たとえば構造１０２内の優勢なデータ型に基づいてどの命名スキームを採用するかを決定することができる。
【００２７】
分類子は、入力属性ベクトル、ｘ＝（ｘ１、ｘ２、ｘ３、ｘ４、ｘｎ）を、入力がクラスに属するという信頼性にマップする関数、すなわちｆ（ｘ）＝信頼性（クラス）である。こうした分類は、（たとえば分析の有用性およびコストを考慮に入れた）確率的および／または統計に基づく分析を採用して、ユーザが自動的に実行したいと望むアクションを予測または推論することができる。
【００２８】
サポートベクトルマシン（ＳＶＭ）は、採用できる分類子の一例である。ＳＶＭは、可能な入力のスペース内に超曲面を見つけ出すことによって機能し、この超曲面は、非トリガーイベントからトリガー基準を分離することを試みる。これによって、トレーニングデータに近いが一致してはいないデータをテストするために分類が直観的に修正される。他の指定されたモデル分類手法および指定されていないモデル分類手法は、たとえばナイーブベイズ、ベイジアンネットワーク、決定木を含み、異なるパターンの独立性を提供する確率的な分類モデルを採用することができる。本明細書で使用される分類は、優先順位のモデルを生成するために利用される統計的回帰も含む。
【００２９】
本明細書から容易に理解できるように、本発明は、（たとえば包括的なトレーニングデータを介して）明確にトレーニングされている分類子、ならびに（たとえばユーザのふるまいを観察すること、外部からの情報を受け取ることによって）暗黙のうちにトレーニングされている分類子を採用することができる。たとえばＳＶＭは、分類子コンストラクタおよび機能選択モジュール内の学習すなわちトレーニング局面を介して構成される。したがって、複数の機能を自動的に実行するために１つまたは複数の分類子を使用することができ、これらの機能としては、評価をノードにどのように割り当てるかを所定の基準に従って決定すること、評価を行う際にどのようなメトリックスを含めるか、ノード用の評価を生成する際に重み付けスキームを採用するかどうか、ユーザに基づいて特定の評価スキームを採用すること、名前出力を生成するためにどのような文字列またはテキストを採用するか、一般的に学習された重要でない用語および文字（たとえば冠詞、代名詞、および文字列）を無視すること、どの単一の言葉（または文字もしくはイメージ）あるいは言葉（または文字もしくはイメージ）の組合せを使用するかをノードにおける複数の用語から決定すること、どこでフォントまたは文字の配色を採用することができるか、ユーザに表示するために単一の文字および／または言葉あるいは文字および／または言葉の組合せにおいてどのような色または色の組合せを使用することができるか、分かりやすい名前の用語から文字にどのような音をリンクすることができるかなどがあるが、これらには限定されない。
【００３０】
次いで図５を参照すると、本発明による人口知能を使用してメトリックス情報を学習するプロセスのフローチャートが示されている。５００において、ユーザは、任意の所与のノードにおける評価を決定するために使用することになるメトリックスの最初のセットを決定する。５０２では、そのメトリックスがデータ構造の多くのノードに適用され、５０４におけるノードの評価に至る。５０６において、システムは、測定に従って新たなメトリックスを採用できるかどうかを判定する。「はい」の場合、システムは５０８において、その観察された評価メトリックスを学習する。５１０において、システムは、これに応じて既存の評価基準のセットを更新する。これは、たとえば所定の期間にわたってもはや観察されなくなった評価メトリックスのセットから１つまたは複数の基準を取り除く「エージアウト」プロセスを含むことができる。あるいは更新プロセスが、分かりやすい命名プロセスをさらに強化するために、１つまたは複数の基準を既存の基準のセットに追加するステップを含む。５１２では、希望の評価を有するノードが選択される。５１４では、ノードまたはノードパス用の分かりやすい名前（または言葉の組合せ）が生成される。そしてプロセスは、終了ブロックに到達する。
【００３１】
システムが新たなメトリックスを観察しない場合、フローは５０６から５１２に進み、希望の評価を有するノードを選択し、これに応じてプロセスは分かりやすい名前に到達する。
【００３２】
評価は最も高い値である必要はなく、一定範囲内の（すなわち上位の範囲、中位の範囲、または下位の範囲でさえよい）評価を有するノードとすることができることを当業者なら理解することができる。たとえばユーザは、データ構造のうち観察されているアクティビティが最も少ない（下位の範囲の評価の）部分、または観察されているアクティビティが中程度の（中位の範囲の評価の）部分について分かりやすい名前が生成されることを希望することができる。
【００３３】
次いで図６を参照すると、本発明による分かりやすい名前を生成するプロセスのフローチャートが示されている。６００において、名前の処理用にノードが選択される。これは、単一のハイレベルのノード、または自身のパス情報によって、結果としての分かりやすい名前を生成するために処理する必要のある多数の用語と関連付けられている子ノードを含むことができる。６０２において、システムはパス情報の処理を開始するように動作する。６０４では、第１のノードからノード識別子データが得られる。６０６では、そのノードの評価が命名用のしきい値を満たしているかどうかが判定される。「はい」の場合、６０８において、ノード識別子データが言葉のテキストかまたは文字列かが判定される。テキストの場合、フローは６１０へ進み、フィルタを使用して冠詞や代名詞などの重要ではないテキストが取り除かれる。しかし選別のレベルおよび選別されるテキストの種類は、ユーザが希望する任意の言葉を含むように、または除外するように調整できることに留意されたい。この機能によって、システムが参照してノード識別子データをテストできる言葉の辞書を使用することが推論される。この辞書は、分類子によって実行されると、結果としての分かりやすい名前情報に従って自動的に更新することができる。６１２では、そのノード用の記述的なテキストが選択される。これは、単一の言葉または言葉の組合せを含むことができる。６１４では、これが処理対象の最後のノードかどうかが判定される。「はい」の場合、フローは６１６へ進み、分かりやすい名前が生成され、出力される。そしてプロセスは、終了ブロックに到達する。
【００３４】
これが処理対象の最後のノードである場合、フローは６１４から６１８に進み、次のノードを処理する。そしてフローは６０６へ戻り、次のノードがしきい値を満たしているかどうかを判定する。そのノードが命名用のしきい値を満たしていない場合、フローは６０６から６２０へ進み、そのノードを無視する。６１８では次のノードが処理され、それに従ってフローが進む。
【００３５】
ノード識別子データ（または記述子データ）がテキストではなく、文字列あるいはおそらくイメージまたはオーディオデータであると判定された場合、フローは６０８から６２２へ進み、そのノード用の代表的な識別子文字列、オーディオ、および／またはイメージデータを得る。再び６１４において、これが処理対象の最後のノードかどうかが判定される。「はい」の場合、関連付けられた文字列データ、オーディオおよび／またはイメージデータのいずれかを使用して、分かりやすい名前を生成することができる。
【００３６】
次いで図７を参照すると、開示されたアーキテクチャを実行するように動作できるコンピュータのブロック図が示されている。本発明のさまざまな態様のためにさらなるコンテキストを提供するため、図７および以降の考察は、本発明のさまざまな態様を実施できる適切なコンピューティング環境７００の簡潔で全般的な説明を提供することを意図している。ここまでは、１つまたは複数のコンピュータ上で実行できるコンピュータ実行可能命令という一般的なコンテキストで本発明について説明したが、本発明は他のプログラムモジュールと組み合わせて、および／またはハードウェアとソフトウェアの組合せとして実装できることを当業者なら理解するであろう。
【００３７】
一般にプログラムモジュールは、特定のタスクを実行したり特定の抽象データ型を実装したりするルーチン、プログラム、コンポーネント、データ構造などを含む。さらに本発明の方法は、シングルプロセッサコンピュータシステムまたはマルチプロセッサコンピュータシステム、ミニコンピュータ、メインフレームコンピュータ、ならびにパーソナルコンピュータ、ハンドヘルドコンピューティングデバイス、マイクロプロセッサベースの家庭用電化製品またはプログラム可能な家庭用電化製品などを含む他のコンピュータシステム構成と共に実施することができ、そのそれぞれは、１つまたは複数の関連するデバイスと動作可能に結合できることを当業者なら理解するであろう。
【００３８】
説明される本発明の態様は、通信ネットワークを介してリンクされるリモート処理デバイスによって特定のタスクが実行される分散コンピューティング環境において実施することもできる。分散コンピューティング環境では、プログラムモジュールは、ローカルメモリストレージデバイスおよびリモートメモリストレージデバイスの双方に配置することができる。
【００３９】
通常、コンピュータはさまざまなコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータによってアクセス可能な、揮発性媒体および不揮発性媒体、ならびに着脱式媒体および固定式媒体の双方を含む利用可能な任意の媒体とすることができる。たとえばコンピュータ可読媒体はコンピュータ記憶媒体および通信媒体を含むことができるが、これらには限定されない。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を記憶するための任意の方法または技術において実装できる揮発性媒体および不揮発性媒体、ならびに着脱式媒体および固定式媒体を含む。コンピュータ記憶媒体は、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリまたは他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（ＤＶＤ）または他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージまたは他の磁気ストレージデバイス、あるいは希望の情報を記憶するために使用可能で、コンピュータによってアクセス可能な他の任意の媒体を含むが、これらには限定されない。
【００４０】
通信媒体は通常、コンピュータ可読命令、データ構造、プログラムモジュール、または搬送波や他の伝送メカニズムなどの変調されたデータ信号内の他のデータを具体化し、何らかの情報伝達媒体を含む。「変調されたデータ信号」という用語は、情報をその信号に符号化するような方法でその特性の１つまたは複数が設定または変更された信号を意味する。たとえば通信媒体は、有線ネットワークや直接有線接続などの有線媒体と、音響媒体、ＲＦ媒体、赤外線媒体、および他の無線媒体などの無線媒体とを含むが、これらには限定されない。また上記のいずれの組合せも、コンピュータ可読媒体の範囲内に含まれるものである。
【００４１】
図７を参照すると、本発明のさまざまな態様を実装するための典型的な環境７００が示されており、この環境７００はコンピュータ７０２を含み、コンピュータ７０２は、処理装置７０４、システムメモリ７０６、およびシステムバス７０８を含む。システムバス７０８は、システムメモリ７０６などを含むシステムコンポーネントを処理装置７０４に結合する。処理装置７０４は、さまざまな市販のプロセッサのいずれにすることもできる。処理装置７０４として、デュアルマイクロプロセッサおよび他のマルチプロセッサアーキテクチャを採用することもできる。
【００４２】
システムバス７０８は、（メモリコントローラを伴う、または伴わない）メモリバス、周辺バス、およびさまざまな市販のバスアーキテクチャのいずれかを使用するローカルバスへとさらに相互接続できる複数のタイプのバス構造のいずれにすることもできる。システムメモリ７０６は、読取り専用メモリ（ＲＯＭ）７１０およびランダムアクセスメモリ（ＲＡＭ）７１２を含む。基本入出力システム（ＢＩＯＳ）は、ＲＯＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭなどの不揮発性メモリ７１０内に格納されており、このＢＩＯＳは、起動中などにコンピュータ７０２内の要素間における情報伝達を補助する基本ルーチンを含む。またＲＡＭ７１２は、データをキャッシュに格納するためのスタティックＲＡＭなどの高速ＲＡＭを含むこともできる。
【００４３】
コンピュータ７０２は、内蔵型ハードディスクドライブ（ＨＤＤ）７１４（たとえばＥＩＤＥ、ＳＡＴＡ）（この内蔵型ハードディスクドライブ７１４は、適切な筐体（図示せず）に入れて外付けとして使用するように構成することもできる）、（たとえば、着脱式ディスケット７１８との間で読取りや書込みを行うための）磁気フロッピー（登録商標）ディスクドライブ（ＦＤＤ）７１６、および（たとえばＣＤ−ＲＯＭディスク７２２を読み取る、またはＤＶＤなどの他の大容量光媒体との間で読取りや書込みを行うための）光ディスクドライブ７２０をさらに含む。ハードディスクドライブ７１４、磁気ディスクドライブ７１６、および光ディスクドライブ７２０は、それぞれハードディスクドライブインターフェース７２４、磁気ディスクドライブインターフェース７２６、および光ディスクドライブインターフェース７２８によって、システムバス７０８に接続することができる。外付けドライブ実装用のインターフェース７２４は、ユニバーサルシリアルバス（ＵＳＢ）およびＩＥＥＥ１３９４インターフェース技術の少なくとも１つまたは両方を含む。
【００４４】
これらのドライブおよびその関連するコンピュータ可読媒体は、データ、データ構造、コンピュータ実行可能命令などの不揮発性の記憶を提供する。コンピュータ７０２用に、これらのドライブおよび媒体は、適切なデジタル形式での任意のデータの記憶に対処する。上記のコンピュータ可読媒体の説明は、ＨＤＤ、着脱式磁気ディスケット、およびＣＤやＤＶＤなどの着脱式光媒体を指しているが、Ｚｉｐドライブ、磁気カセット、フラッシュメモリカード、カートリッジなど、コンピュータによって読み取り可能な他のタイプの媒体も典型的な動作環境内で使用できること、またさらに任意のそうした媒体は、本発明の方法を実行するためのコンピュータ実行可能命令を含むことができることを当業者なら理解するはずである。
【００４５】
オペレーティングシステム７３０、１つまたは複数のアプリケーションプログラム７３２、他のプログラムモジュール７３４、およびプログラムデータ７３６など、複数のプログラムモジュールをドライブおよびＲＡＭ７１２内に格納することができる。これらのオペレーティングシステム、アプリケーション、モジュール、および／またはデータのすべてまたは一部は、ＲＡＭ７１２内のキュッシュに格納することもできる。
【００４６】
本発明はさまざまな市販のオペレーティングシステムまたはオペレーティングシステムの組合せと共に実装できることを理解することができる。
【００４７】
ユーザは、たとえばキーボード７３８およびマウス７４０等のポインティングデバイスなど、１つまたは複数の有線／無線入力デバイスを介してコンピュータ７０２にコマンドおよび情報を入力することができる。他の入力デバイス（図示せず）は、マイクロフォン、ＩＲリモートコントローラ、ジョイスティック、ゲームパッド、スタイラスペン、タッチスクリーンなどを含むことができる。これらの入力デバイスおよび他の入力デバイスは、システムバス７０８に結合されている入力デバイスインターフェース７４２を介して処理装置７０４に接続される場合が多いが、パラレルポート、ＩＥＥＥ１３９４シリアルポート、ゲームポート、ＵＳＢポート、ＩＲインターフェースなどの他のインターフェースによって接続することもできる。
【００４８】
またモニタ７４４や他のタイプのディスプレイデバイスも、ビデオアダプタ７４６などのインターフェースを介してシステムバス７０８に接続される。モニタ７４４に加えて、コンピュータは通常、スピーカ、プリンタなどの他の周辺出力デバイス（図示せず）を含む。
【００４９】
コンピュータ７０２は、（１つまたは複数の）リモートコンピュータ７４８などの１つまたは複数のリモートコンピュータへの有線および／または無線通信を介した論理接続を使用して、ネットワーク化された環境内で動作することができる。（１つまたは複数の）リモートコンピュータ７４８は、ワークステーション、サーバコンピュータ、ルータ、パーソナルコンピュータ、ポータブルコンピュータ、マイクロプロセッサベースの娯楽機器、ピアデバイス、または他の一般的なネットワークノードとすることができ、説明を簡潔にするためにメモリストレージデバイス７５０しか示していないが、通常はコンピュータ７０２に関連して説明した要素の多くまたはすべてを含む。示されている論理接続は、ローカルエリアネットワーク（ＬＡＮ）７５２および／またはより大きなネットワーク、たとえばワイドエリアネットワーク（ＷＡＮ）７５４への有線／無線接続性を含む。こうしたＬＡＮおよびＷＡＮのネットワーキング環境は、オフィス、および企業においてよく見受けられ、イントラネットなどの企業規模のコンピュータネットワークを容易にし、そのすべては、全世界規模の通信ネットワーク、たとえばインターネットに接続することができる。
【００５０】
ＬＡＮネットワーキング環境において使用する場合、コンピュータ７０２は、有線および／または無線通信ネットワークインターフェースまたはアダプタ７５６を介してローカルネットワーク７５２に接続される。このアダプタ７５６は、ＬＡＮ７５２への有線または無線通信を容易にすることができ、ＬＡＮ７５２は、無線アダプタ７５６と通信するための無線アクセスポイントをその上に配置して含むこともできる。ＷＡＮネットワーキング環境において使用する場合、コンピュータ７０２はモデム７５８を含むことができ、またはＬＡＮ上の通信サーバに接続され、あるいはインターネットを介してなど、ＷＡＮ７５４上で通信を確立するための他の手段を有する。モデム７５８は、内蔵型または外付け型および有線または無線のデバイスとすることができ、シリアルポートインターフェース７４２を介してシステムバス７０８に接続される。ネットワーク化された環境では、コンピュータ７０２またはその一部に関連して示されているプログラムモジュールをリモートメモリ／ストレージデバイス７５０内に格納することができる。示したネットワーク接続は代表的なものであり、コンピュータ間に通信リンクを確立する他の手段を使用できることが理解できるであろう。
【００５１】
コンピュータ７０２は、無線通信内に動作可能に配置された任意のワイヤレスデバイスまたはエンティティ、たとえばプリンタ、スキャナ、デスクトップおよび／またはポータブルコンピュータ、携帯情報端末、通信衛星、無線で検出可能なタグに関連付けられた任意の設備または場所（たとえば売店、ニューススタンド、化粧室）、ならびに電話と通信するように動作することができる。これは、少なくともＷｉ−ＦｉおよびＢｌｕｅｔｏｏｔｈ（商標）無線技術を含む。したがって通信は、従来のネットワークと同様に事前に定義された構造とするか、または単に少なくとも２つのデバイス間のその場限りの通信とすることができる。
【００５２】
Ｗｉ−Ｆｉ、すなわちＷｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙによって、家庭のソファ、ホテルの部屋のベッド、または仕事中の会議室からインターネットへの無線接続が可能となる。Ｗｉ−Ｆｉは携帯電話のような無線技術であり、たとえばコンピュータなどのデバイスが基地局から一定範囲内のどこでも屋内および屋外のデータを送信および受信できるようにする。Ｗｉ−Ｆｉネットワークは、安全で信頼できる高速な無線接続性を提供するために、ＩＥＥＥ８０２．１１（ａ、ｂ、ｇなど）と呼ばれる無線技術を使用している。Ｗｉ−Ｆｉネットワークは、コンピュータを相互に、インターネットに、および（ＩＥＥＥ８０２．３またはイーサネット（登録商標）を使用する）有線ネットワークに接続するために使用することができる。Ｗｉ−Ｆｉネットワークは、無認可の２．４および５ＧＨｚの無線帯域内で、１１Ｍｂｐｓ（８０２．１１ｂ）または５４Ｍｂｐｓ（８０２．１１ａ）のデータ転送速度で、あるいは双方の帯域（デュアルバンド）を含む製品と共に動作し、これによって、多くのオフィスで使用されている基本的な１０ＢａｓｅＴ有線イーサネット（登録商標）ネットワークと同様の実際のパフォーマンスを提供することができる。
【００５３】
次いで図８を参照すると、本発明による典型的なコンピューティング環境８００の概略ブロック図が示されている。システム８００は、１つまたは複数のクライアント８０２を含む。（１つまたは複数の）クライアント８０２は、ハードウェアおよび／またはソフトウェア（たとえばスレッド、プロセス、コンピューティングデバイス）とすることができる。（１つまたは複数の）クライアント８０２は、たとえば本発明を採用することによって（１つまたは複数の）クッキーおよび／または関連するコンテキスト情報を格納することができる。またシステム８００は、１つまたは複数のサーバ８０４も含む。（１つまたは複数の）サーバ８０４は、ハードウェアおよび／またはソフトウェア（たとえばスレッド、プロセス、コンピューティングデバイス）とすることができる。サーバ８０４は、たとえば本発明を採用することによって変換を実行するためのスレッドを格納することができる。クライアント８０２とサーバ８０４の間の１つの可能な通信は、複数のコンピュータプロセスの間で伝送されるように適合されたデータパケットの形態とすることができる。このデータパケットは、たとえばクッキーおよび／または関連するコンテキスト情報を含むことができる。システム８００は、通信フレームワーク８０６（たとえば、インターネットなどの全世界規模の通信ネットワーク）を含み、これを使用して（１つまたは複数の）クライアント８０２と（１つまたは複数の）サーバ８０４の間の通信を容易にすることができる。
【００５４】
通信は、（光ファイバを含む）有線および／または無線技術を介して容易に行うことができる。（１つまたは複数の）クライアント８０２は、１つまたは複数のクライアントデータストア８０８に動作可能に接続されており、これを使用して、（１つまたは複数の）クライアント８０２のローカルな情報（たとえば、（１つまたは複数の）クッキーおよび／または関連するコンテキスト情報）を保存することができる。同様に（１つまたは複数の）サーバ８０４は、１つまたは複数のサーバデータストア８１０に動作可能に接続されており、これを使用して、サーバ８０４のローカルな情報を保存することができる。
【００５５】
ここまで説明してきた内容には、本発明の実施例が含まれる。もちろん、本発明について説明するためにコンポーネントまたは方法に関して考え得るすべての組合せを記載することは不可能だが、本発明に関して多くのさらなる組合せおよび並べ替えが可能であることを当業者なら認識することができる。
【図面の簡単な説明】
【００５６】
【図１】本発明による命名システムを示す図である。
【図２】本発明の評価プロセスを示すフローチャートを示す図である。
【図３】階層型ファイル構造のより具体的な例として本発明の命名プロセスを示す図である。
【図４】本発明による人口知能を採用する命名システムを示す図である。
【図５】本発明による人口知能を使用してメトリックス情報を学習するプロセスを示すフローチャートである。
【図６】本発明による分かりやすい名前を生成するプロセスを示すフローチャートを示す図である。
【図７】開示されたアーキテクチャを実行するように動作できるコンピュータを示すブロック図である。
【図８】本発明による典型的なコンピューティング環境を示す概略ブロック図である。
【符号の説明】
【００５７】
１０２  階層型データ構造
１１２  評価コンポーネント
１１４  選択コンポーネント
１１６  記述コンポーネント
１１８  名前の出力（群）
３００  階層型データ構造
３０２  名前生成システム
３０３  命名コンポーネント
７０４  処理装置
７０６  システムメモリ
７０８  バス
７１４  内蔵型ハードディスクドライブ
７１４  外付け型ハードディスクドライブ
７１６  フロッピー（登録商標）ディスクドライブ
７１８  ディスク
７２０  ＣＤドライブ
７２２  ディスク
７２４  インターフェース
７２６  インターフェース
７２８  インターフェース
７３０  オペレーティングシステム
７３２  アプリケーション
７３４  モジュール
７３６  データ
７３８  キーボード
７４０  マウス
７４２  入力デバイスインターフェース
７４４  モニタ
７４６  ビデオアダプタ
７４８  リモートコンピュータ（群）
７５０  メモリ／ストレージ
７５６  ネットワークアダプタ
７５８  モデム
８０２  クライアント（群）
８０４  サーバ（群）
８０６  通信フレームワーク
８０８  クライアントデータストア（群）
８１０  サーバデータストア（群）
【図１】
0004837934.tif 000002
【図２】
0004837934.tif 000003
【図３】
0004837934.tif 000004
【図４】
0004837934.tif 000005
【図５】
0004837934.tif 000006
【図６】
0004837934.tif 000007
【図７】
0004837934.tif 000008
【図８】
0004837934.tif 000009