Subject: PCIM: Encodings for the three Mask properties in PTPCondition

From: [email-masked]
Date: Thu, 10 Feb 2000 16:45:18 -0500

In CIM, the string data type uses the UCS-2 encoding, which
means that each character is encoded in 2 octets.  While
this encoding makes sense for strings in general, it's very
inefficient (and inefficient for no apparent benefit) in the
case of the three properties MonthOfYearMask, DayOfMonthMask,
and DayOfWeekMask.  First, the current definitions for these
properties are incorrect:  they say both that the properties
are CIM strings ( --> they're UCS-2 strings --> each of the
characters in the strings is encoded in 2 octets) and that
the format is "A string of 12 (or 62, or 7) ASCII 0's and 1's"
( ==> each character is encoded in 1 octet).

One way to eliminate this contradiction would be to remove
the reference to ASCII, and say that the characters in the
strings are UCS-2-encoded 0's and 1's.  But this would mean
that each bit's worth of information was being represented
with a 16-bit encoding.  Not only is this inefficient -- it
invites data models based on the PCIM to define different
formats for their encodings (e.g., strings of ASCII 0's and
1's), precisely because it is so inefficient.

The authors of the PCIM believe that there's a better
approach:  recast these three properties as CIM octet strings
of the appropriate length, with each bit's worth of information
encoded in one bit.  Given this CIM encoding, it will be up to
each data model based on the PCIM to determine whether to
retain the 4-octet length that CIM puts on the front of its
octet strings, or to map just the octets containing the
significant bits.

Regardless of whether it's this proposal or another one, we'd
like to get consensus on *some* way of removing the
contradictions in these property definitions ASAP, so we can
roll it into an updated version of the PCIM.

Thanks.

Regards,
Bob

Bob Moore
IBM Networking Software
+1-919-254-4436
[email-masked]