Subject: Re: REVISED protocol review notes [LONG]

From: "Jim Sermersheim" <[email-masked]>
Date: Tue, 21 Oct 2003 21:50:11 -0600

Actually my current plan is to define both:
     Attribute ::= SEQUENCE {
             type    AttributeDescription,
             vals    SET SIZE (1..MAX) OF AttributeValue }
and
     PartialAttribute ::= SEQUENCE {
             type    AttributeDescription,
             vals    SET OF AttributeValue }

and use them in the appropriate places.

Does this sound reasonable?

Jim

>>> "Kurt D. Zeilenga" <[email-masked]> 10/21/03 9:17:11 PM >>>
At 08:01 PM 10/21/2003, Jim Sermersheim wrote:
>>>> Kurt Zeilenga < [email-masked] > 10/7/03 3:48:43 PM >>>
>>> 
>>> Attribute ::= SEQUENCE { 
>>> type AttributeDescription, 
>>> vals SET OF AttributeValue } 
>>> 
>>> Each attribute value is distinct in the set (no duplicates). The
set 
>>> of attribute values is unordered. Implementations MUST NOT reply
upon 
>>> any apparent ordering being repeatable. 
>>> 
>>
>>This type is never explicitly used in the protocol. 
> 
>It is the type for ModifyRequest.changes.modification

Okay... but I note that ModifyRequest.changes.modification is
a partial attribute. I assume your other changes to clarify
Attribute may be partial will lead to PartialAttributeList
fading away.

Kurt

---

From: "Kurt D. Zeilenga" <[email-masked]>
Date: Tue, 21 Oct 2003 21:12:15 -0700

>Does this sound reasonable?

Well, I had thought this made sense (as I suggest in my notes).

However, as almost all uses should be PartialAttribute
and not Attribute, it may make more sense just to have
Attribute and make it more clear that all uses allow can
be partial (not all values) and a few uses allow it to be
empty (no values).

(objectClass is an example of an attribute where not all
values are required to be transferred.)

Kurt

---

From: Steven Legg <[email-masked]>
Date: Wed, 22 Oct 2003 18:17:00 +1100

Jim,

> Does this sound reasonable?

Yes, but you could also do this:

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

You could also in-line the right hand side of the Attribute assignment
statement everywhere Attribute is needed and then rename PartialAttribute
to just Attribute.

By the way, are you intending to put identifiers into each of
the SET OF and SEQUENCE OF notations ? I so, do you want me to
make some appropriate suggestions ?

Regards,
Steven