Re: More notes on content negotiation

Dave Kristol:
> (Koen Holtman) wrote:
>  [a long proposal on content negotiation]
>  [...]
>  > - The mechanism should allow negotiation based on the User-Agent
>  > header to be efficient.
>  [...]
><purist> I really despise content negotiation based on
>User-Agent. </purist>

<me-too>I don't really like it either</me-too>, but I don't think we
can live without it: it is the only way to negotiate around user agent

>One problem with such negotiation is it precludes a user's
>enabling/disabling features on the User-Agent. 

No it does not, it only does if used incorrectly.

> Suppose someone decided
>(Jeez, I don't know why) to disable tables in tables.  If my User-Agent
>field says Browser/Version-with-tables-in-tables, this negotiation very
>likely may decide to send a tables-in-tables version of a resource.
>What then?

Then the service provider used User-Agent based negotiation when it
was not appropriate.

Using the User-Agent header to determine the value of a user-settable
part of the user agent profile is of course not possible: User-Agent
based negotiation should always be limited to properties that cannot
be changed by the user.

If the user can disable tables-in-tables, we'd better hope that the
`tables-in-tables enabled' flag can be accessed by the negotiation
process in some way, e.g. because it is in a bitmap of
user-configurable browser capabilities sent in an accept header.

>So, while I dislike the idea of some kind of feature profile, be it a
>bitmap or whatever, that would seem preferable to just going on

Profiles listing some user agent features that cannot be changed by
users may reduce the number of cases in which User-Agent based
negotiation is needed, they cannot eliminate those cases.

(OK, we could have browsers that automatically download the latest bug
list for inclusion in the profile, but that would be even more
horrible than User-Agent based negotiation.)

>Dave Kristol


Received on Thursday, 16 November 1995 14:43:31 UTC