Download Inheritance - The Open Group

Transcript
The only key values that are supported are:
● KeyBinding::BOOLEAN
● KeyBinding::STRING
● KeyBinding::NUMERIC
This limitation is imposed by the "XML Mapping Specification v2.0.0" specification. The CIM types are
encoded as one of these three in the following way:
boolean - BOOLEAN (the value must be "true" or "false")
uint8 - NUMERIC
sint8 - NUMERIC
uint16 - NUMERIC
sint16 - NUMERIC
uint32 - NUMERIC
sint32 - NUMERIC
uint64 - NUMERIC
sint64 - NUMERIC
char16 - NUMERIC
string - STRING
datetime - STRING
Notice that real32 and real64 are missing. Properties of these types cannot be used as keys.
Notice that the keys in the object name may appear in any order. That is the following object names refer to the
same object:
TennisPlayer.first="Patrick",last="Rafter"
TennisPlayer.last="Rafter",first="Patrick"
And since CIM is not case sensitive, the following refer to the same object:
TennisPlayer.first="Patrick",last="Rafter"
tennisplayer.FIRST="Patrick",Last="Rafter"
Therefore, the CIMReferences::operator==() would return true for the last two examples.
The CIM standard leaves it an open question whether model paths may have spaces around delimiters (like '.',
'=', and ','). We assume they cannot. So the following is an invalid model path:
TennisPlayer . first = "Patrick", last="Rafter"
We require that the '.', '=', and ',' have no spaces around them.
For reasons of efficiency, the key bindings are internally sorted during initialization. This allows the key
bindings to be compared more easily. This means that when the string is converted back to string (by calling
toString()) that the keys may have been rearranged.
There are two forms an object name can take:
<namespace-path>:<model-path>
http://donald/MSB/Manual/CIMReference.html (3 of 7) [5/5/2001 8:55:49 AM]