Common Information Model (CIM)を使用していますインフラストラクチャをモデル化します。モデルは、さまざまな IT システムの多数のクラスを記述します。これは包括的であるため、1 つではなく一連の階層で構成されています。たとえば、物理サーバー シャーシを表すには、CIM_Chassis のインスタンスを定義します。次に、そのハードウェアで実行される論理サーバーを表すために、CIM_ComputerSystem のインスタンスを定義します。次に、2 つを CIM_SystemPackaging のインスタンスに関連付けて、一方が他方によって提供されることに注意してください。どちらのクラスにも、あるクラスを別のクラスのプロパティとして設定できるプロパティはありません。これらは 2 つの別個のクラスであり、3 番目のクラスによって関連付けられています。モデルは XML で記述され、CIM の現在の XML スキーマによって検証されます。CIM_SystemPackaging の XSD から、どのようなコンテンツが含まれているのかわかりません。
この XML は問題を示しています (chassis は CIM_Chassis.xsd などのエイリアスです)。
<chassis:CIM_Chassis>
<chassis:CreationClassName>CIM_Chassis</chassis:CreationClassName>
<chassis:Manufacturer>Cisco</chassis:Manufacturer>
<chassis:Model>Catalyst 6000</chassis:Model>
<chassis:Tag>6548431</chassis:Tag>
</chassis:CIM_Chassis>
<computer:CIM_ComputerSystem>
<computer:CreationClassName>CIM_ComputerSystem</computer:CreationClassName>
<computer:Name>Switch1</computer:Name>
</computer:CIM_ComputerSystem>
<sp:CIM_SystemPackaging>
<sp:Antecedent>?</sp:Antecedent>
<sp:Dependent>?</sp:Dependent>
</sp:CIM_SystemPackaging>
どこに何を入れればいいですか?それは?スキーマのドキュメントはこの件について沈黙しており、Web 上には XML の例はないようです。これは検証されません:
E [Xerces] cvc-complex-type.2.4.b: The content of element 'sp:Antecedent' is not complete. One of '{WC[##other:"http://schemas.dmtf.org/wbem/wscim/1/common",""]}' is expected.
スキーマでは、Dependent と Antecedent は cimReference 型であり、次のとおりです。
<xs:complexType name="cimReference">
<xs:sequence>
<xs:any namespace="##other" maxOccurs="unbounded" processContents="lax"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
だから、それは私をあまり助けません。インスタンスを前提条件内に埋め込むつもりなのかどうか疑問に思いました。
<sp:CIM_SystemPackaging>
<sp:Antecedent>
<chassis:CIM_Chassis>
...etc...
</chassis:CIM_Chassis>
</sp:Antecedent>
<sp:Dependent>
<computer:CIM_ComputerSystem>
...etc...
</computer:CIM_ComputerSystem>
</sp:Dependent>
</sp:CIM_SystemPackaging>
これは問題ありませんが、スケーリングしないようです。シャーシ内の各ハードウェアのオブジェクトが存在する可能性があり、それらはすべて同様の関連付けクラスでシャーシに関連付ける必要があるため、すぐに不可能になります。また、アソシエーション モデル全体に反しているようにも見えます。CIM がどのように機能するかを説明できるほど、CIM に詳しい人はいますか?