There are two reasons that the default needs to separate.
1. There may be a reason for the ordering of values and the default
may not be the first. For example with sides, I would want
the ordering to be one-sided, two-sided-long-edge, two-sided-short-edge
for all printers supporting these three values (under the assumption
that a GUI would probably present then in the order received), but the
default would vary from printer to printer.
2. The rule of "first" works for key-words, but not for integers, dates
or any type of value whose values are expressed by a range rather
than by an enumeration. Of course, the default in this case could
be the first (i.e. lowest) value in the range, and I suggest this
in the rules that I proposed. But it isn't possible to rearrange a
range to make some other number appear to be first.
So, as my rules suggested. The rule of "first" is fine as a default if
the printer does not explicitly specify a default. But I think that
it is normally better to have an explicit default.
> From rdebry at us.ibm.com Wed Apr 23 07:26:56 1997
> From: Roger K Debry <rdebry at us.ibm.com>
> To: <ipp at pwg.org>, <bob.herriot at Eng>
> Subject: IPP>MOD - your comments on conformance
> Date: Wed, 23 Apr 1997 10:27:23 -0400
> Mime-Version: 1.0
> Sender: ipp-owner at pwg.org> X-Lines: 29
> Epilogue: Roger K deBry
> Senior Techncial Staff Member
> Architecture and Technology
> IBM Printing Systems
> email: rdebry at us.ibm.com> phone: 1-303-924-4080
>> Bob, thank you for your comments. I agree with most of them and will
> work them into the conformance text. However, one area that I feel
> very uncomfortable with is the current discussion going on in the model
> group on supportedXXX and defaultXXX. This whole discussion seems
> overly complicated to me.
>> What is wrong with simply using the convention that the first attribute
> value returned is the default. For example, if the Printer implements
> the Sides attribute and supports the values 1-sided and 2-sided-long-
> edge, and 1-sided is the default, then in response to a query on
> sides the response would be
>> sides: 1-sided, 2-sided-long-edge.
>> On the other hand, if 2-sided-long-edge were the default, then the
> response would be
>> sides: 2-sided-long-edge, 1-sided.
>> Seems simple, straightforward to me.