HP WBEM Services Software Developer's Kit for HP-UX Provider and Client Developer's Guide A.01
Schema Design and Implementation
Schema Design
Chapter 3 43
installed, identifying them as appropriate subclasses of
CIM_USBDevice (for example ACME_USBPrinter or ACME_USBMouse).
However, very little is known about an attached device which does
not have a driver. Such an unknown device could be modeled as a
separate "unknown" subclass such as ACME_UnknownUSBDevice.Ifat
some time, the required driver were installed to permit identification
of the device, the provider could then delete the instance of
ACME_UnknownUSBDevice and create an instance of the appropriate
subclass (for example ACME_USBScanner) to represent the additional
attributes of the device.
In-Schema Documentation
Each class and property may have a Description qualifier. The
Description qualifier, which can be obtained and displayed by client
programs, supplies important information about the schema element it
is describing. In the case of a property, for example, it can elaborate on
the meaning of specificvalues that the propertycould have. In the case of
a method, it could discuss the intended use of parameters, the meaning
of return values, or other information.
STEP 6: Write MOF Files
The next step is creation of Managed Object Format (MOF) files. MOF
files are used to specify schema to the CIM Server via the MOF Compiler
(really a MOF Loader). This step details the process and other
considerations in creating MOF files. Specifics on MOF file syntax are
available in the and the CIM Specification. Guidelines for creating MOF
files are described in the section below on Schema Implementation.
Identify Property Types and Method Signatures
Identify the appropriate type for each property and method within a
class. Also be sure that the parameters within the method are typed
appropriately. It is better to select a larger data type if size is in doubt
(for example uint16 vs. uint32) since property types and method
signatures cannot be changed in future schema versions without
breaking backward compatibility.
In addition, one should consider if it is necessary to override a property
(via the Override qualifier) from a superclass (perhaps to add a Write or
more detailed Description qualifier) as discussed below.