[Date Prev][Date Next] [Chronological] [Thread] [Top]

Re: protocol: ASN.1 for Attribute




Hallvard,

Hallvard B Furuseth wrote:
I'd like to join my belated vote against the hairy

        Attribute ::= PartialAttribute(WITH COMPONENTS {
             ...,
             vals (SIZE(1..MAX))})

definition to John McMeeking's message in the 'REVISED protocol
review notes [LONG]' thread.  All other ASN.1 in [Protocol] is quite
simple, and easy to understand.  This exception is not necessary.
As John said, this is not even longer:

          Attribute ::= SEQUENCE {
               type       AttributeDescription,
               vals       SET SIZE(1..MAX) OF value AttributeValue }

I don't see any arguments in _favor_ of the current notation in that
thread, except that it's cool.

The current notation allows ASN.1 compilers to recognize that Attribute is related by derivation to PartialAttribute. Compilers can then produce a programming language object class hierarchy with PartialAttribute as the base class and Attribute as a subclass. This allows instances of Attribute to be used interchangably with instances of PartialAttribute in application code (insofar as the minimum number of values is of no importance).

Regards,
Steven


> While it's cool to be cool, I don't
think that's a very strong argument.