- From: Dave Kristol <dmk@bell-labs.com>
- Date: Wed, 08 Apr 1998 10:13:41 -0400
- To: Henrik Frystyk Nielsen <frystyk@w3.org>
- CC: ietf-http-ext@w3.org
Henrik Frystyk Nielsen wrote: > > At 16:37 3/24/98 -0500, Dave Kristol wrote: > [...] > >3. Extension Declarations > > prefix = 2*DIGIT "-" > > The "-" is, of course, superfluous. It simplifies coding > > marginally. Is that why it's there? > > The purpose of the "-" is to avoid the potential corner problem of the > header field name space being filled up. Any other non-nummeric character > would do. I don't think you understood my point, and I confess I don't understand yours. What I'm saying is this: the syntactic definition could just as well be prefix=2*DIGIT, with the understanding that a '-' gets used between <prefix> and the header. So I could have M-PUT /a-resource HTTP/1.1 Man: "stuff"; ns=43 43-copyright: more-stuff ... > [...] > > "-". The format of the prefix using a combination of digits and the > > dash "-" guarantees that no extension declaration can reserve the > > whole header field name space. > > > > I guess I don't follow the logic here. Or maybe it's that I > > don't understand how, with a different approach, some > > extension could have reserved the whole header name space. > > Without the dash you could have a set of prefixes like this > > 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 > > and you would have reserved the whole prefix space. Given what I said above, I don't think it's the '-' that prevents reserving the whole extension space. Rather it's the 2*DIGIT part. You would have to reserve 00, 01, 02, ..., 99 to hog the space. (Maybe I should have listed this point under "nits". :-) > > > extension identifier is maintained and kept unquestioned throughout > > the lifetime of the extension. Care should be taken not to distribute > > ========================= > > > > Seems to me there's no way to gauge the lifetime. The > > originator may have one idea, but there may well be > > software in the field with a lifetime far in excess of > > the intended lifetime of the extension. In other > > words, unless there's an expiration built into the > > extension, the extension identifier has to be unique > > forever, I think. > > I think there are two points here: > > 1) do we need to indicate when and if an extension is no longer and if so, > does it have to be part of the extension framework. > 2) What is a reasonable estimate of a lifetime. > > Wrt 1) the idea is that if an extension is no longer then it would not be > available and return 410 (Gone) if trying to resolve it. On the other hand > the extension may at that time be ubiquitous and doesn't have to be > resolved as everybody knows what it is. I don't think we have to deal with > this here. I don't think 410 (Gone) is an appropriate status code in this context. 510 (Not extended) seems more appropriate. > > For 2) I would suggest that we use Harald's notion of reasonable amount of > time as 50 years. > > Do you agree? I think there are two sub-problems, for a given pair of client/server hosts. a) How long should a program that knows it previously used an extension assume it can continue to use the extension? b) How long should a program that knows it could *not* previously use an extension wait before it tries to use the extension again? Maybe 50 years is the right answer for (a) (though I doubt it), but 50 years is almost certainly the wrong answer for (b). Dave Kristol
Received on Wednesday, 8 April 1998 10:14:05 UTC