(57)【特許請求の範囲】
【請求項１】
複数のオブジェクトを表現するためのコンピューター化された方法であって、
コンピューティング装置の記憶領域に、階層構造を有する分類内で複数の分類の種類に関連するデータが格納されており、前記分類は、対応する関連付けと共に複数のオブジェクトを表現するための前記複数の分類の種類を仕分けするための包括的な構造を定義すること、
前記コンピューティング装置のプロセッサーによって、仕分けされたオブジェクトと１または複数の他の関連オブジェクトとの関係に基づく少なくとも１つの前記分類の種類に従ってオブジェクトを仕分けするステップと、
前記コンピューティング装置の前記プロセッサーによって、前記仕分けされたオブジェクトの前記分類の種類に第１の参照を関連付けるステップであって、前記第１の参照は、前記仕分けされたオブジェクトによって表現された実際の物を特定するステップと、
前記コンピューティング装置の前記プロセッサーによって、前記階層構造の中の前記分類の種類と同じ階層構造レベルで前記仕分けされたオブジェクトの分類の種類の中に組み込まれる第１のデータセットを生成するステップであって、前記第１のデータセットは、前記仕分けされたオブジェクトの第１のタグであり、前記仕分けされたオブジェクトよりも前記階層構造の中で高位に配置される１または複数の関連オブジェクトのセットを特定するステップと、
前記コンピューティング装置の前記プロセッサーによって、前記階層構造の中の前記分類の種類と同じ階層構造レベルで前記仕分けされたオブジェクトの分類の種類の中に組み込まれる第２のデータセットを生成するステップであって、前記第２のデータセットは、前記仕分けされたオブジェクトの第２のタグであり、前記仕分けされたオブジェクトよりも前記階層構造の中で低位に配置される１または複数の関連オブジェクトのセットを特定するステップと、
前記コンピューティング装置の前記プロセッサーによって、前記複数のオブジェクトにアクセスするために、ユーザに前記包括的な構造を提供するステップと
を備えることを特徴とする方法。
【請求項２】
前記コンピューティング装置の前記プロセッサーによって、ユーザからのクエリに応答して、前記仕分けされたオブジェクトの情報と、前記仕分けされたオブジェクトの分類の種類の中の前記第１のデータセット及び前記第２のデータセットの情報とを提供するステップをさらに備えることを特徴とする請求項１に記載のコンピューター化された方法。
【請求項３】
前記情報を提供するステップは、前記仕分けされたオブジェクトの分類の種類の単一のインスタンスを生成するステップを含み、
前記オブジェクトは、前記仕分けされたオブジェクトの情報と前記第１のデータセット及び前記第２のデータセットの中で表わされた情報とを含む
ことを特徴とする請求項２に記載のコンピューター化された方法。
【請求項４】
前記第１のデータセットは、１または複数のデータフィールドを含み、
前記第１のデータセットを生成するステップは、前記仕分けされたオブジェクトよりも階層構造において高位に配置された１または複数の関連オブジェクトの各々のセットに関連する情報を前記データフィールドに格納するステップを含む
ことを特徴とする請求項１に記載のコンピューター化された方法。
【請求項５】
前記第２のデータセットは、１または複数のデータフィールドを含み、
前記第２のデータセットを生成するステップは、前記仕分けされたオブジェクトよりも階層構造において低位に配置された１または複数の関連オブジェクトの各々のセットに関連する情報を前記データフィールドに格納するステップを含む
ことを特徴とする請求項１に記載のコンピューター化された方法。
【請求項６】
前記第１のデータセットを生成するステップは、前記仕分けされたオブジェクトよりも階層構造において高位に配置された１または複数の関連オブジェクトの各々のセットを特定するために、前記仕分けされたオブジェクトの分類の種類の参照を格納するステップを含むことを特徴とする請求項１に記載のコンピューター化された方法。
【請求項７】
前記第２のデータセットを生成するステップは、前記仕分けされたオブジェクトより階層構造において低位に配置された１または複数の関連オブジェクトの各々のセットを特定するために、前記仕分けされたオブジェクトの分類の種類の参照を格納するステップを含むことを特徴とする請求項１に記載のコンピューター化された方法。
【請求項８】
請求項１に記載のコンピューター化された方法を実行するためのコンピューターで実行可能な命令を有するコンピューター可読記録媒体。
【請求項９】
複数のオブジェクトを表現するためのシステムであって、
階層構造を有する複数の分類の種類に関連するデータを格納するための記憶領域と、
コンピューターで実行可能な命令を実行するように構成されるプロセッサーとを備え、
前記プロセッサーは、
仕分けされたオブジェクトと１または複数の他の関連オブジェクトとの関連性に基づく少なくとも１の前記分類の種類に従ってオブジェクトを仕分けし、
前記仕分けされたオブジェクトに関連する情報を前記記憶領域に格納し、
第１の参照を前記仕分けされたオブジェクトの前記分類の種類に関連付けることであって、前記第１の参照は、前記仕分けされたオブジェクトによって表現された実際の物を特定し、
前記階層構造の中の前記分類の種類と同じ階層構造レベルで前記仕分けされたオブジェクトの分類の種類の中に組み込まれる第１のデータセットを生成することであって、前記第１のデータセットは、前記仕分けされたオブジェクトよりも前記階層構造の中で高位に配置される１または複数の関連オブジェクトのセットを特定し、
前記階層構造の中の前記分類の種類と同じ階層構造レベルで前記仕分けされたオブジェクトの分類の種類の中に組み込まれる第２のデータセットを生成することであって、前記第２のデータセットは、前記仕分けされたオブジェクトよりも前記階層構造の中で低位に配置される１または複数の関連オブジェクトのセットを特定し、
前記複数のオブジェクトにアクセスするために、ユーザに包括的な構造を提供することを特徴とするシステム。
【請求項１０】
前記仕分けされたオブジェクトの情報と前記第１のデータセット及び第２のデータセットの中で表現された情報とを含む前記仕分けされたオブジェクトの分類の種類の単一のインスタンスを生成するためのインターフェースをさらに備えることを特徴とする請求項９に記載のシステム。
【請求項１１】
前記インターフェースは、前記仕分けされたオブジェクトの情報と前記第１のデータセット及び第２のデータセットの中の単一の例で表現された情報とを提供するように構成されることを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記第１のデータセットは、番号付きリストを備えることを特徴とする請求項９に記載のシステム。
【請求項１３】
前記第２のデータセットは、前記仕分けされたオブジェクトより前記階層構造において低位に配置された１または複数の関連オブジェクトの各々のセットに関連する情報を格納するための１または複数のデータフィールドを備えることを特徴とする請求項９に記載のシステム。
【請求項１４】
前記第１のデータセットは、前記仕分けされたオブジェクトより前記階層構造において高位に配置された１または複数の関連オブジェクトの各々のセットを特定するための参照を備え、前記第２のデータセットは、前記仕分けされたオブジェクトより前記階層構造において低位に配置された１または複数の関連オブジェクトの各々のセットを特定するための参照を備える、ことを特徴とする請求項９に記載のシステム。
【請求項１５】
前記プロセッサーは、ハードウェアの分類構造において複数の分類の種類を定義するように構成され、前記第１のデータセットは、前記仕分けされたオブジェクトより前記ハードウェアの分類構造において高位に配置された１または複数の関連オブジェクトのセットを特定し、前記第２のデータセットは、前記仕分けされたオブジェクトより前記ハードウェアの分類構造において低位に配置された１または複数の関連オブジェクトのセットを特定する、ことを特徴とする請求項９に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
ツリー構造のようなデータ階層スキームは、データを表現し、組織化し、及び検索するための重要なツールである。通常のスキームは、含まれるデータの種類を仕分けする定義を確立することから始める。同時に、各データの種類は、階層スキームによって表わされるデータを指す参照メカニズム（例えば、ポインター、リンク、または物理メモリアドレス）に関係することがある。さらに、参照メカニズムは、階層の横断やクエリの要求の処理において否定的な影響を与える場合がある。
【０００２】
現在の実務は、基本的なツリー構造に依存しており、そのニーズに適合するように様々なプログラミング言語を適用している。具体例として図１を使用すると、分類構造１００は、装置内のハードウェアデータを組織化する基本的な例である。この分類構造においては、ハードウェアノード１０２は、階層のトップにあるため、全ての他のノードの親ノードとして仕分けされている。ハードウェアノード１０２は、１または複数の子供を有しており、そのうちの１つがインターフェースノード１０４である。このように、ハードウェアノード１０２は、ポインターまたはその子供ノード、この例におけるインターフェースノード１０４、を指す参照を含んでいる。インターフェースノード１０４は、また、子供ノードに対する親ノードでもある。同様にインターフェースノード１０４は、その親、すなわちハードウェアノードを指すポインターと、その子供達のノード、この場合のＣＯＭ１及びＣＯＭ２、を指すポインターとを有している。
【０００３】
この基本的で基礎的な既存の階層スキームでは、ポインターを実装して、このポインターに基づく関係を確立することが便利である。しかし、関係をすべて知る前に、構造の完全な横断を行なう必要がある。具体例として図１を使用すると、インターフェースノード１０４より低い階層レベルにあることを知るためには、ツリー構造の３つのレベルをＣＯＭ１に向かって横断する必要がある。インターフェースノード１０４へ横断するとき、より低いレベルがあるかもしれないということを知っているだけである（ポインターはあるがそれがＮＵＬＬを指すかもしれない場合がありそうな時から）。しかし、下のレベルに横断するまで、その下のノードの正体を知らない場合がある。構造全体の横断は、一般に１０８で示されているが、図１のツリー構造で左から右まで亘って示されている。
【発明の概要】
【０００４】
本発明の実施形態は、関連付けられたオブジェクトへの参照を備えたデータを支持する分類構造に従ってオブジェクトを定義することによって、既存の実務の不備を克服する。関連するオブジェクトや、これら関連するオブジェクトによって表わされる実際の物（actual entities）への参照についての情報を含むこれらの参照を使用することで、本発明の側面は強固な仕分けまたは分類構造を確立する。他の実施形態では、本発明の側面を具体化するメカニズム及び規則は、ＸＭＬ（extensible markup language）またはＵＭＬ（unified modeling language）を使用する。
【０００５】
この概要は、詳細な説明においてさらに後述するコンセプトの簡略化された形の選択肢を紹介するために提供される。この概要は、請求の範囲に記載された主題の重要な特徴または本質的な特徴を特定することを目的としていないし、請求の範囲に記載された主題の範囲を決定することの補助として使用されることも目的としていない。
【０００６】
他の特徴は、部分的に明らかにされ、部分的には以下に示されるだろう。
【図面の簡単な説明】
【０００７】
【図１】既存の通常の階層構造の表現を示すブロック図である。
【図２Ａ】本発明の実施形態に従う分類構造の基本的な表現を示すブロック図である。
【図２Ｂ】本発明の実施形態に従う分類構造の基本的な表現を示すブロック図である。
【図３Ａ】本発明の実施形態に従う分類構造の要素を具体化する典型的なデータ構造を示すブロック図である。
【図３Ｂ】本発明の実施形態に従う分類構造の要素を具体化する典型的なデータ構造を示すブロック図である。
【図４】本発明の実施形態に従う分類構造を使用するためのシステムを示すブロック図である。
【図５】本発明の実施形態に従う分類構造を形成する複数のオブジェクトを表現する工程を示すフローチャートである。
【図６】本発明の実施形態に従う特定の規制分類（containment taxonomy）の実行を例示するブロック図である。
【発明を実施するための形態】
【０００８】
対応する参照符号は、図面全体にわたって対応する部分を示す。
【０００９】
本発明の実施形態は、規制分類（containment taxonomy）または用語ツリーのような、標準化され、物理的なオブジェクトを表わすために使用される階層構造を定義するのに効率的なメカニズムを提供する。例えば、規制分類は、データセンターなどに設置されるコンピューター装置のシャシーに結合される、ネットワークカードまたはアダプターカードのような物理的なハードウェアを表わすことができる。規制分類はまた、ファイル（例えば、コンピューター装置内のファイル構造システム）への言及、または、場所（例えば、地方の建物のデータセンターまたは作業スペース）を含むことができる。用語分類は、ステータス、サブステータス、シンプトン（symptom）などの定義を含むことができる。他の実施形態では、本発明の観点は、構造の柔軟性を維持しながら分類構造を単一デザインにおける「現実の世界」のデータに関連付け、効率的な横断、探索、及び検索を提供する。
【００１０】
ここで図２Ａ及び図２Ｂを参照すると、本発明の実施形態に従う分類構造の基本的な表現２００のブロック図が示されている。この例では、表現２００は、コンピューターシステムにセットアップされたハードウェアシャシーの格納構造（containment structure）を示している。一の実施形態では、この格納構造のために複数の分類の種類を定義している。例えば、複数の分類の種類は、クラスが表わす物（entity）を特定するためクラスを特定する。例えば、クラスは、ハードウェアシャシーの中で物の集合を表わし、分類の種類は、物の各々をより良好に組織化して表現することが望まれるだろう。この比較的直接の例では、複数の分類の種類は、「Hardware」「Interface」「COM1」「Network Card」などを含むことができる。他の分類の種類は、本発明の範囲から逸脱しない特定の使用に由来する構造に基づいて定義され得ることが理解されるべきである。また、用語分類のための他の分類の種類または他のクラスが、本発明の範囲から逸脱せずに適用されることが理解される。
【００１１】
図２Ａを参照すると、「Hardware」の分類の種類を有するオブジェクト２０２は、構造のための親を特定している。オブジェクト２０２は、この構造の中に１または複数の関連オブジェクトを有する。本発明の実施形態では、オブジェクト２０２は、階層構造内の他のオブジェクトとの関連性に基づいて、関連オブジェクトを特定するタグの定義２０４を含むことができる。この例では、タグの定義２０４は、オブジェクト２０２より下位の階層レベルにある１または複数のオブジェクトを特定する。有利な点として、本発明の実施形態の側面の構造は、オブジェクト２０２のレベルより下位の各々のオブジェクトを参照してポインターを割り当てる必要はなく、図１に示されたような追加の情報を含む必要もない。
【００１２】
さらに、本発明の実施形態に従う分類の種類の例では、オブジェクト２０６は、他の分類の種類「COM1」を定義している。このオブジェクト２０６は、定義タグ２１０及び２１２を使用して関連オブジェクトを特定する。図２Ｂは、分類の種類「COM1」内のオブジェクトに関連付けられたオブジェクトの詳細を示す本発明の実施形態に従うブロック図を示す。例えば、オブジェクト２０６は、階層構造内でより高位（すなわち、親レベル）に位置付けられる１つまたは複数のオブジェクトを特定する第１のデータセットを含む「parent tag」２１０を含む。例えば、定義タグの「parent tag」２１０は、オブジェクト２０６の親オブジェクトのリストを示す。この例では、定義タグ２１０は、分類の種類「Interface」はオブジェクト２０６の親であるか、またはオブジェクト２０６より階層構造で高位に位置することを示す。またタグ２１０は、分類の種類「Interface」の親、すなわちオブジェクト２０２と、「Hardware」とに関連する情報を含む。他の実施形態では、リストは番号付きリストにしてもよい。
【００１３】
他の実施形態では、第１のデータセットは、また、各々の特定された分類の種類に関連する情報または参照を格納するための１または複数のデータフィールドを含む。例えば、親タグ（parent tag）２１０は、「Broadcom」という、分類の種類「Interface」によって表わされる物への参照または情報を含む。他の例では、第１のデータセットは、また、「Mboard」という、分類の種類「Hardware」によって表わされる物への参照または情報を含む。他の例では、参照は、物を参照するリンク、パス、またはデータ値にすることができる。
【００１４】
同様に、定義タグ２１２は、階層構造において下位（すなわち子供レベル）に配置された１または複数のオブジェクトのセットを特定する第２のデータセットを含む。例えば、定義タグ２１２は、第２のデータセットが分類の種類「Network Card」や、分類の種類「Wireless」への参照を含むことを示している。第２のデータセットは、また、分類の種類「Network Card」「generic Ethernet（登録商標） card」によって表わされる物への参照や、分類の種類「Wireless」「WirelessA」によって表わされる物への参照を含む。
【００１５】
このように、本発明の実施形態では、複数の分類の種類を定義し、少なくとも１つの分類の種類に従い、仕分けされたオブジェクトとそれに関連する１または複数のオブジェクトとの関連性に基づいてオブジェクトを仕分けする。また、他の実施形態では、仕分けされたオブジェクトの分類の種類は、仕分けされたオブジェクトによって表わされた実際の物を特定する第１の参照に関連する。図２Ａを例として使用すると、「Hardware」という分類の種類は、「Mboard」をオブジェクト２０２によって表わされた実際の物として特定する第１の参照を含む。
【００１６】
図３Ａを参照すると、本発明の実施形態に従う分類構造の要素を具体的に表わす典型的なデータ構造３０２のブロック図が示されている。データ構造３０２は、分類の種類に関する第１のデータフィールド３０４を含む。例えば、第１のデータフィールド３０４の中の分類の種類は、インターフェース接続、ネットワークカードアダプター、またはそれと同種のハードウェア規制分類（containment taxonomy）を含むことができる。もう一つの分類の種類は、ステータス、サブステータス、またはこれと同種の用語分類とすることができる。データ構造３０２は、また、モデル例への第１の参照に関連する第２のデータフィールド３０６を含む。ここで、モデル例は、第１の参照３０６によって表現された物を特定する。さらに、図３Ａに例示されているように、データ構造３０２は、第２のデータフィールド３０６に格納されたデータを備えたデータセットを格納する第３のデータフィールド３０８を含む。データセットは、階層構造において仕分けされたオブジェクトに関連する１または複数のオブジェクトのセットを特定する。
【００１７】
一例では、第３のデータフィールド３０８は、階層構造の高位に位置する仕分けされたオブジェクトに関連する１または複数のオブジェクトのセットを特定する第４のデータフィールド３１０を含む。もう１つの実施形態では、第３のデータフィールド３０８は、階層構造の低位に位置する仕分けされたオブジェクトに関連する１または複数のオブジェクトのセットを特定する第５のデータフィールド３１２を含む。さらに別の実施形態では、第３のデータフィールド３０８は、階層構造の同じレベルに位置し仕分けされたオブジェクトに関連する１または複数のオブジェクトを含むことができる。第１のデータフィールド３０４、第２のデータフィールド３０６、第３のデータフィールド３０８、第４のデータフィールド３１０、及び第５のデータフィールド３１２は、単に例示を目的としており、データ構造３０２内のこれらのデータフィールドの順序を限定しまたは制限しないと理解されるべきである。
【００１８】
図２Ａ及び図３Ａを例として使用すると、図３Ｂは、図２Ａ及び図３Ａに記載した本発明の実行例の図である。例えば、分類の種類２０２を例として使用すると、第１のデータフィールド３０４’は、分類の種類「Hardware」を示している。第２のデータフィールド３０６は、第１のデータフィールド３０４’において特定された分類の種類によって表わされた物への第１の参照に関連している。この例では、第２のデータフィールド３０６’は、「Hardware」という分類の種類によって表わされたハードウェア物品の実際の例を特定する「S/N 98234k; manufacture id: 1002」を示している。第３のデータフィールド３０８’は、階層構造において仕分けされたオブジェクト（例えば、「Hardware」）に関連する１または複数のオブジェクトのセットを特定している。例えば、第４のデータフィールド３１０’は、仕分けされたオブジェクトよりも階層構造の高位に位置し仕分けされたオブジェクトに関連する１または複数のオブジェクトを含む。この例では、図３Ｂにおける第４のデータフィールド３１０’は、親のオブジェクト（すなわち、階層で「Hardware」よりも高位に配置された１または複数のオブジェクト）である「Computing device」を特定し、「Computing device」によって表わされた物である「PCx200」を特定する。同様に、第５のデータフィールド３１２’は、子供オブジェクト（すなわち、階層で「Hardware」よりも低位に配置された１または複数のオブジェクト）である「Interface」及び「IDE」を特定し、子供オブジェクトによって表わされた物である「Broadcom」及び「Faxcom」を特定する。もう一つの実施形態では、第３のデータフィールド３０８は、仕分けされたオブジェクトと階層構造で同じレベルに配置された１または複数の関連するオブジェクトを含むことができる。
【００１９】
そのようにすることで、ユーザが一例における構造に関する情報を入手できるように、各々の分類の種類は階層構造において関連するオブジェクトに関する豊富な情報を含む。一例では、本発明の実施形態は、仕分けされたオブジェクトの情報と第１のデータセット及び第２のデータセットの中で表わされた情報とを含む仕分けされたオブジェクトの分類の種類の単一の例を具体化または作成する。１の他の実施形態では、ＸＭＬスキーマタイプは、以下に記述されるように定義することができる。
【００２０】
<xs:element name=“OrganizationalContainmentTaxonomy” 
type=“core:ContainmentTaxonomyType”>
<xs:annotation>
<xs:documentation>A containment taxonomy defining organizational parent/child (container/containing) references for an instance of OrganizationalEntity.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name=“OrganizationalContainmentTaxonomyRef” />
Similar definition for LocationContainmentTaxonomy
<xs:element name=“WorkItemStatusTerminology” type=“core:TerminologyTaxonomyType”/>
<xs:element name=“WorkItemStatusTerminologyRef”/>
【００２１】
図４は、本発明の実施形態に従う分類構造を使用するシステム４００を示すブロック図である。１の実施形態において、本発明の実施形態の具体的な一例を図４を使用して示す。システム４００は、複数の分類の種類４０４（例えば、図２Ａにおける分類の種類２０２）に関するデータを格納する記憶領域４０２を含む。プロセッサー４０４は、複数の分類の種類を定義するコンピューターで実行可能な命令を実行するように構成される。プロセッサー４０６は、それと関係付けられた１または複数の他のオブジェクトに仕分けされたオブジェクトとの関連性に基づく少なくとも１の分類の種類に従ってオブジェクトを仕分けする。
【００２２】
プロセッサー４０６は、また、仕分けされたオブジェクトに関連する情報を記憶領域に格納する。第１の参照は、仕分けされたオブジェクトの分類の種類に関連する。また第１の参照は、仕分けされたオブジェクトによって表わされた実際の物を特定する。プロセッサー４０４は、また、仕分けされたオブジェクトの分類の種類内に第１のデータセット（例えば、定義タグ２１０に含まれるデータ）を生成する。第１のデータセットは、仕分けされたオブジェクトよりも階層構造の高位に配置された１または複数の関連オブジェクトのセットを特定する。プロセッサー４０６は、仕分けされたオブジェクトの分類の種類における第２のデータセットを生成する。また第２のデータセットは、仕分けされたオブジェクトよりも階層構造の低位に配置された１または複数の関連オブジェクトのセットを特定する。
【００２３】
他の実施形態では、システム４００は、仕分けされたオブジェクトの情報と第１のデータセット及び第２のデータセット内で表わされた情報とを含む仕分けされたオブジェクトの分類の種類の単一の例を作成するインターフェース４１０を含む。この例では、ユーザ４１２は、仕分けされたオブジェクトに関連する情報を検索するため分類を横断するクエリを入力する。クエリのプロセスでは、プロセッサー４０６は、分類の種類内で仕分けされたオブジェクトと第１のデータセット及び分類の種類内のデータセットとを特定することによって、クエリに応答して情報を特定する（例えば、図１に１０８で示す全ての構成物を横断する代わりに）。第１のデータセット（第３のデータフィールド３１０によって表わされる）及び第２のデータセット（第４のデータフィールド３１２によって表わされる）は、階層構造における高位及び低位に配置されたオブジェクトのセットを各々ですでに特定しているので、本発明の実施形態では、クエリに応答して構成物の最後まで完全に横断する必要はない。
【００２４】
他の実施形態では、同様の構造において、用語分類（例えば、ステータス、サブステータス、兆候（symptom）の階層）を定義すること）を格納し、進行するために定義することができる。用語分類または規制分類とは無関係に、本発明の実施形態は、例えばファイル構造の表現、企業体の表現、ビジネスモデルの仕分けまたは他の仕分け方法の実行のような他の例に役立つ構成を定義する。上記したように、本発明の観点は、「現実の世界」のデータ（図６の「entity」のカッコ内に示されたような）を結び付けるためのメカニズムを提供する。一例では、ＵＭＬクラスまたはＸＭＬスキーマタイプは、「現実の世界」のデータまたは物を分類の種類と結びつけるのに用いられる。また本発明の実施形態は、一回の実例検索で分類の種類と分類階層の検索を最適化する。さらに、本発明の他の実施形態は、図２Ａ及び図３Ａに示された同一の構造を使用するパートナーや顧客によって拡張できるように柔軟である。例えば、パートナーや顧客のために定義された分類の種類に基づいて、本発明の実施形態では、全ての関連データを適切に表現できる。例えば、すべてのハードウェアベンダーは、上述の構造に基づいてオブジェクトを仕分けすることによって、彼らの内部の在庫システム（inventory systems）をカバーするために、ハードウェアの分類の種類の実行を拡張できる。
【００２５】
さらにまた、実施形態は、階層構造内の関連オブジェクトを参照することに伴う実際の問題の１つを解決する。例えば、分類は、通常、隣接した親への直接的な参照や時には子供への参照を使用して、ＵＭＬまたはＸＭＬスキーマの中に記述される。これは、例えば、コンピューターがそのデバイスを備える場所で、及びデバイスがそれを備えるコンピューターに参照を付ける場所で行われる。しかし、このアプローチは非能率的である。なぜなら、プログラマーは、隣接する親へデ−レファレンス（de-reference）するか参照を修正し、親の「親」（１つで全て定義されるとき）を保持するデータ項目を決定し、次いで、親の親のデータを取得するためにデ−レファレンスし、これらを無限に行わなければならないからである。
【００２６】
次に、図５は、本発明の実施形態に従う分類構造を形成する複数のオブジェクトを表わす工程を示すフローチャートを示している。５０２では、複数の分類の種類が分類と共に定義される。分類は、複数のオブジェクトを表わすための複数の分類の種類を仕分けする。５０４では、オブジェクトが、それが関連する１または複数のオブジェクトと仕分けされたオブジェクトとの関連性に基づく少なくとも１の分類の種類に従って仕分けされる。第１の参照は、仕分けされたオブジェクトの分類の種類に関連する。またこの第１の参照は、５０６において仕分けされたオブジェクトによって表現された実際の物を特定する。仕分けされたオブジェクトの分類の種類における第１のデータセットが生成される。第１のデータセットは、５０８において、仕分けされたオブジェクトよりも階層構造の中で高位に配置された１または複数の関連オブジェクトのセットを特定する。例えば、親タグ（parent tag）２１０は、生成された第１のデータセットを含むことができる。５１２では、仕分けされたオブジェクトの分類の種類における第２のデータセットが生成される。第２のデータセットは、仕分けされたオブジェクトよりも階層構造の中で低位に配置された１または複数の関連オブジェクトのセットを特定する。
【００２７】
オペレーションとして、本発明の実施形態は、図６に示され、また以下に述べるように実行することができる。図６は、データセンターにおける棚枠（chassis in a rack）のような実際の収納環境の例を示す。実際の収納の例は、以下の通りである。企業は、地域内の、建物内の、データセンター内の棚枠における明確な位置を追跡したいと希望する（多国籍地域の定義（definition)まで遡る）。本発明の側面を具体化するＸＭＬスキーマの定義は、各々のビジネス／マネージメント（mgmt）の実体の詳細を提供する。
１．枠のシリアルナンバー、利用可能な／使用済の区画の数、他の保証データ
２．棚のシリアルナンバー、利用可能な／使用済の地区の数、連絡先（contacts）
３．データセンターの名称、ステータス、連絡先（contacts）、．．．
４．建物の名称、間取り図、．．．
５．地域名（例えば、都市または郡の名称）
６．さらに、分類の例がある。
【００２８】
各々のビジネスまたはマネージメントの実体は、その分類例または種類への参照を含む。また、分類例または種類は、ビジネスまたはマネージメントの実体、及び、例えば図６に示されたような全ての親／子供を参照し返す。例えば、「MyChassis1」は、「Chassis」の分類の種類へ参照し返された実体である。
【００２９】
一の実施形態では、「MyRack」の具体的な分類の例は、以下のデータを含む。
１．棚の例への参照、「MyRack」
２．整列された親（例えば、第１のデータセット）
（ａ）．地域への参照、「MyCountry」、及び「MyCountry」の分類の例
（ｂ）．地域への参照、「MyCity」、及び「MyCity」の分類の例
（ｃ）．建物への参照、「MyBldg」、及び「MyBldg」の分類の例
（ｄ）．作業スペースへの参照、「MyDC」、及び「MyDC」の分類の例
３．子供（例えば、第２のデータセット）
（ａ）．枠への参照、「MyChassis1」、及び「MyChassis1」の分類の例
（ｂ）．枠への参照、「MyChassis2」、及び「MyChassis2」の分類の例
したがって、実体からその分類への一の参照横断で、親と子供の全ての情報が利用可能になる。
【００３０】
ＸＭＬの処理基盤が本来的に「分類」を理解し支援に関与する場合に、本発明の他の実施形態は最適化される。例えば、代わりの名称または代わりの収納経路を支援するメカニズムの例があるかもしれない。このように、「現実の世界」の例または実体は、具体的な分類の例を参照すべきでないだろう。しかし、その代わりに、収納の階層を指定する他の名称／経路を明確にするだろう。実例に命名する規則を含む例は、十分な機能を備えるために必要になるかもしれない。例えば、図２Ａの「COM1」の代わりの名称または代わりの収納経路は、「DSL card」になるだろう。
【００３１】
例として図６を使用すると、ＸＭＬを使用して親／ピアデータの容易な検索を可能にする「命名規則」は、最後の「/」に先行するサブストリングを作成し、かつ親の参照を取得するためのストリング接尾辞「.xml」、もしくは全てのピアを取得するための「/...」サフィックスを加えるために、名前／経路を解体することである。例えば、MyChassis1のための親ラックの名称は、「MyCountry/MyCity/MyBldg/MyRack/MyChassis1.xml」−「/MyChassis1.xml」＝「MyCountry/MyCity/MyBldg/MyRack.xml」である。また、全てのピアは、「MyCountry/MyCity/MyBldg/MyRack/...」に対して検索することで取得できる。枠（chassis）の全ての子供は、「MyCountry/MyCity/MyBldg/MyRack/MyChassis1/...」を照会することで取得できる。
【００３２】
特に明記しない限り、ここに例示されたまたは記述された本発明の実施形態のオペレーションの実施または実行の順序は必須のものではない。すなわち、特に明記しない限り、オペレーションは他の順序で実行することができる。また、本発明の実施形態は、追加のまたはここで開示したものより少ないオペレーションを含むことができる。例えば、特定のオペレーションの実施または実行の前の、同時の、または事後の他のオペレーションが本発明の側面の範囲内で意図される。
【００３３】
本発明の実施形態は、コンピューターで実行可能な命令によって実行することができる。コンピューターで実行可能な命令は、コンピューターで実行可能なコンポーネントまたはモジュールで構成することができる。本発明の観点では、いくつかのまたは組織化されたそのようなコンポーネントまたはモジュールで実行することができる。例えば、本発明の観点は、本明細書に記載され及び図面に示された具体的なコンピューター実行可能命令または具体的なコンポーネントやモジュールに限定されない。本発明の他の実施形態は、本明細書に記載され及び例示された同等の機能を有する異なるコンピューター実行可能命令またはコンポーネントを含むことができる。
【００３４】
本発明の観点またはその実施形態の要素に言及する際、冠詞の「a」「an」「the」及び「前記（said）」は、１または複数の要素があることを意味すると理解すべきである。「から構成される（comprising）」及び「有する（having）」という用語は、列挙された要素以外の追加の要素があり得ることを包含し意味すると理解すべきである。
【００３５】
本発明の観点を詳細に記載したが、添付した特許請求の範囲で特定される本発明の観点の範囲から逸脱しない限り、変更や変形が可能であることは明らかであろう。本発明の観点の範囲から逸脱しない限り、上記の構造、製品、および方法において種々の変更をなすことが可能であるため、上記の説明に含まれ及び添付図面に示された全ての事項は例示であって意味を制限しないように解釈されるべきである。
【図１】
0004746698.tif 000002
【図２Ａ】
0004746698.tif 000003
【図２Ｂ】
0004746698.tif 000004
【図３Ａ】
0004746698.tif 000005
【図３Ｂ】
0004746698.tif 000006
【図４】
0004746698.tif 000007
【図５】
0004746698.tif 000008
【図６】
0004746698.tif 000009