auerbach@CSL.SRI.COM (Karl Auerbach) (07/23/89)
Digging deeper into 8825... Section 9.2.3 of the ISO 8825:1987(E)... regarding the encoding of bit strings... says "if the bitstring is empty, there shall be no subsequent octets, and the initial octet shall be zero." OK. So if I have an empty bit string is the preferred encoding: bitstring length 03 00 --or-- bitstring length unused-bits 03 01 00 Seems like the latter form is the "correct" way according to section 9.2.3. If so, is the first form legal? Section 9.2 seems to say that it isn't: "The contents octets for the primitive encoding shall contain an initial octet followed by zero, one or more subsequent octets." I.e. the "initial" octet does not seem to be optional. If the first form isn't legal, then how does that comport with section 9.3 which says that "The contents octets for the constructorized encoding shall consist of *ZERO*, one or more data values."? (emphasis added) According to 9.3 I could express my empty bit string as: bitstring length 23 0 Which looks a whole lot like the (assumed) illegal non-constructorized form. --karl--