2.2.11 ClassType

The ClassType block is used to define a CIM class. It consists of two sequential CIM class definitions. The first block consists of the definition of the superclass to the current CIM class. The second block is the actual CIM class definition that is being encoded in the current EncodingUnit.

 ClassType = ParentClass CurrentClass

That is, if the CIM class hierarchy is

  
 class MyBase {  }
 class MyDerived : MyBase { }

then the ParentClass block contains the definition of MyBase, and the CurrentClass block contains the definition of MyDerived.

A class might not have a superclass, as specified in [DMTF-DSP0004] Appendix A. The ParentClass block MUST be present even if the class that is coded in CurrentClass has no superclass. In this case, the ParentClass block MUST be filled with the class name as NULL, zero class names in the derivation list, zero class qualifiers, zero properties, and zero HeapItems in ClassHeap.