Subject: [apps-discuss] I-D Action: draft-ietf-appsawg-xdash-01.txt

From: [email-masked]
Date: Tue, 18 Oct 2011 13:33:41 -0700

A New Internet-Draft is available from the on-line Internet-Drafts directories. This draft is a work item of the Applications Area Working Group Working Group of the IETF.

	Title           : Deprecating Use of the &quot;X-&quot; Prefix in Application Protocols
	Author(s)       : Peter Saint-Andre
                          D. Crocker
                          Mark Nottingham
	Filename        : draft-ietf-appsawg-xdash-01.txt
	Pages           : 12
	Date            : 2011-10-18

   Historically, designers and implementers of application protocols
   have often distinguished between &quot;standard&quot; and &quot;non-standard&quot;
   parameters by prefixing the latter with the string &quot;X-&quot; or similar
   constructions.  In practice, this convention causes more problems
   than it solves.  Therefore, this document deprecates the &quot;X-&quot;
   convention for most application protocol parameters.

A URL for this Internet-Draft is:
http://www.ietf.org/internet-drafts/draft-ietf-appsawg-xdash-01.txt

Internet-Drafts are also available by anonymous FTP at:
ftp://ftp.ietf.org/internet-drafts/

This Internet-Draft can be retrieved at:
ftp://ftp.ietf.org/internet-drafts/draft-ietf-appsawg-xdash-01.txt

---

From: Peter Saint-Andre <[email-masked]>
Date: Tue, 18 Oct 2011 14:41:37 -0600

On 10/18/11 2:33 PM, [email-masked] wrote:
> A New Internet-Draft is available from the on-line Internet-Drafts
> directories. This draft is a work item of the Applications Area
> Working Group Working Group of the IETF.
> 
> Title           : Deprecating Use of the &quot;X-&quot; Prefix in
> Application Protocols Author(s)       : Peter Saint-Andre D. Crocker 
> Mark Nottingham Filename        : draft-ietf-appsawg-xdash-01.txt 
> Pages           : 12 Date            : 2011-10-18

The diff is here:

http://tools.ietf.org/rfcdiff?url2=draft-ietf-appsawg-xdash-01

Thanks to Alexey Melnikov for the review that prompted this revision.

Peter

-- 
Peter Saint-Andre
https://stpeter.im/

---

From: Frank Ellermann <[email-masked]>
Date: Wed, 19 Oct 2011 15:20:02 +0200

> http://tools.ietf.org/rfcdiff?url2=draft-ietf-appsawg-xdash-01

Thanks.

How about adding RFC 4395 as another example for an IANA registry
permitting provisional registrations?  And maybe the "provisional"
feature should get a SHOULD or MAY in section 3, not only a note
in appendix B.

-Frank

---

From: Peter Saint-Andre <[email-masked]>
Date: Thu, 20 Oct 2011 17:05:48 -0600

> feature should get a SHOULD or MAY in section 3, not only a note

Hi Frank, how is this? (BTW I also changed the order slightly.)

###

4.  Recommendations for Protocol Designers

   Designers of new application protocols that allow extensions using
   parameters:

   1.  SHOULD establish registries with potentially unlimited value-
       spaces, if appropriate including both permanent and provisional
       registries.

   2.  SHOULD define simple, clear registration procedures.

   3.  SHOULD mandate registration of all non-private parameters,
       independent of the form of the parameter names.

   4.  SHOULD identify a convention to allow local or implementation-
       specific extensions, and reserve delimeters for such uses as
       needed.

   5.  SHOULD NOT prohibit parameters with the "X-" prefix from being
       registered with the IANA.

   6.  MUST NOT assume that a parameter with an "X-" prefix is non-
       standard.

   7.  MUST NOT assume that a parameter without an "X-" prefix is
       standard.

###

---

From: "Murray S. Kucherawy" <[email-masked]>
Date: Fri, 21 Oct 2011 12:51:54 -0700

> -----Original Message-----
> From: [email-masked] [mailto:[email-masked]] On Behalf Of Peter Saint-Andre
> Sent: Tuesday, October 18, 2011 1:42 PM
> To: [email-masked]
> Subject: Re: [apps-discuss] I-D Action: draft-ietf-appsawg-xdash-01.txt
> 

Hi Peter,

I like this a lot. Simple, to the point, excellent delivery of the history.

After re-reading it from top-to-bottom, the only gripe I have is that, in the second paragraph of Section 1, the use of "advancement" feels ambiguous.  Was said "advancement" because the experimental namespace leaked into the standard namespace, or because what we might expect as "advancement" (i.e., registration) has been more expensive than it's worth?

The idea of advancement from non-standard space to standard space to me suggests the dropping of "X-", but that's exactly what you're saying isn't happening when it should.

The question is really answered in the appendices quite clearly, but it seems having to go there to figure out what this paragraph means suggests a bit more detail here is needed.

I suggest:

   Although in theory the "X-" convention was a good way to avoid
   collisions (and attendant interoperability problems) between standard
   parameters and non-standard parameters, in practice the costs
   associated with the advancement of non-standard parameters into the
   standards space, without proper conversion and registration, have outweighed
   the benefits. Therefore this document deprecates the "X-" convention for
   most application protocols and makes specific recommendations about how to
   proceed in a world without the distinction between standard and non-standard
   parameters.

...or something like that.

Otherwise, nice work!

-MSK

---

From: Peter Saint-Andre <[email-masked]>
Date: Fri, 21 Oct 2011 16:46:49 -0600

On 10/21/11 1:51 PM, Murray S. Kucherawy wrote:
>> -----Original Message----- From: [email-masked]
>> [mailto:[email-masked]] On Behalf Of Peter
>> Saint-Andre Sent: Tuesday, October 18, 2011 1:42 PM To:
>> [email-masked] Subject: Re: [apps-discuss] I-D Action:
>> draft-ietf-appsawg-xdash-01.txt
>> 
>>> A New Internet-Draft is available from the on-line
>>> Internet-Drafts directories. This draft is a work item of the
>>> Applications Area Working Group Working Group of the IETF.
>>> 
>>> Title           : Deprecating Use of the &quot;X-&quot; Prefix
>>> in Application Protocols Author(s)       : Peter Saint-Andre D.
>>> Crocker Mark Nottingham Filename        :
>>> draft-ietf-appsawg-xdash-01.txt Pages           : 12 Date
>>> : 2011-10-18
>> 
>> The diff is here:
>> 

On behalf of my co-authors, I say thanks!

> After re-reading it from top-to-bottom, the only gripe I have is
> that, in the second paragraph of Section 1, the use of "advancement"
> feels ambiguous.  Was said "advancement" because the experimental
> namespace leaked into the standard namespace, or because what we
> might expect as "advancement" (i.e., registration) has been more
> expensive than it's worth?

I see two kinds of cost here:

1. Experimental parameters become de facto standards, which confuses
people because they tend to think that "it starts with 'x-' so it must
not be a standardized parameter" (etc.). Such confusion wastes valuable
mental energy.

2. Some people want de facto standards to become de jure standards,
which means they have to jump through hoops, perhaps change the
parameter name, encourage developers to implement code for the new name
in addition to the old name, etc.

In general, I prefer "leakage" to "advancement" because it has less
tincture of movement up a standards track as in RFC 2026.

> The idea of advancement from non-standard space to standard space to
> me suggests the dropping of "X-", but that's exactly what you're
> saying isn't happening when it should.
> 
> The question is really answered in the appendices quite clearly, but
> it seems having to go there to figure out what this paragraph means
> suggests a bit more detail here is needed.
> 
> I suggest:
> 
> collisions (and attendant interoperability problems) between
> standard parameters and non-standard parameters, in practice the
> costs associated with the advancement of non-standard parameters into
> the standards space, without proper conversion and registration, have
> outweighed the benefits. Therefore this document deprecates the "X-"
> convention for most application protocols and makes specific
> recommendations about how to proceed in a world without the
> distinction between standard and non-standard parameters.
> 

Or just change "advancement" to "leakage", perhaps?

> Otherwise, nice work!

Thanks!

Peter

-- 
Peter Saint-Andre
https://stpeter.im/

---

From: "Murray S. Kucherawy" <[email-masked]>
Date: Fri, 21 Oct 2011 16:37:14 -0700

> From: Peter Saint-Andre [mailto:[email-masked]]
> Sent: Friday, October 21, 2011 3:47 PM
> To: Murray S. Kucherawy
> Cc: [email-masked]

Works for me.  Thanks,
-MSK