Re: coex draft last call -- review of Section 2

"C. M. Heard" <[email protected]> Tue, 7 Jan 2003 13:18:18 -0800 (PST)
Newsgroups gmane.ietf.snmpv3
Message-ID <[email protected]>
On Tue, 7 Jan 2003, David T. Perkins wrote:
> Mike, did you make this claim....
> >>                                   .... there is nothing illegal
> >> about an INTEGER with no subrange or enumerations;  in fact it's
> >> completely equivalent to Integer32 with no subrange.
> 
> Would you show me where the INTEGER without a sub-range (or enumerations)
> is legal?

Well, here is the relevant text from RFC 2578, Section 7.1.1:

   The Integer32 type represents integer-valued information between
   -2^31 and 2^31-1 inclusive (-2147483648 to 2147483647 decimal).  This
   type is indistinguishable from the INTEGER type.  Both the INTEGER
   and Integer32 types may be sub-typed to be more constrained than the
   Integer32 type.

   The INTEGER type (but not the Integer32 type) may also be used to
   represent integer-valued information as named-number enumerations.
   In this case, only those named-numbers so enumerated may be present
   as a value.  Note that although it is recommended that enumerated
   values start at 1 and be numbered contiguously, any valid value for
   Integer32 is allowed for an enumerated value and, further, enumerated
   values needn't be contiguously assigned.

The first paragraph says that the Integer32 and INTEGER types are
indistinguishable, so I would expect that INTEGER could be used
wherever Integer32 could be used, unless a subsequent provision of
the specification said otherwise.  The second paragraph indeed makes
such an exception, which is that one is allowed to use enumerations
with INTEGER but not Integer32.  But I could find is no language in
RFC 2578 that prohibits using an unconstrained INTEGER.  On that basis
I concluded that it's legal.

Now, can you explain to me why that reading is wrong?

Mike