Subject: About RFC 2184

From: Terje Bråten <[email-masked]>
Date: Sat, 14 Apr 2001 18:11:25 +0200

I would like to address some inconsistencies in RFC 2184 regarding
parameter values in MIME header. It is two inconsistencies I would like
to point out.

The first one is about at what number should the counting of the
parameter
parts start (0 or 1). A part of page 3 of RFC 2184 reads:

>   are being used to encapsulate a single parameter value.  The count
>   starts at 0 and increments by 1 for each subsequent section of the
>   parameter value.  Decimal values are used and neither leading zeroes
>   nor gaps in the sequence are allowed.
>
>   The original parameter value is recovered by concatenating the
>   various sections of the parameter, in order.  For example, the
>   content-type field
>
>     Content-Type: message/external-body; access-type=URL;
>      URL*0="ftp://";
>      URL*1="cs.utk.edu/pub/moore/bulk-mailer/bulk-mailer.tar"
>

This clearly states that the numbering of the parameter parts should
start
at 0. But further down in the RFC an example is used where the count
starts
with 1. At page 4 of RFC 2184 you can read:

>4.1.  Combining Character Set, Language, and Parameter Continuations
>
>   Character set and language information may be combined with the
>   parameter continuation mechanism. For example:
>
>   Content-Type: application/x-stuff
>    title*1*=us-ascii'en'This%20is%20even%20more%20
>    title*2*=%2A%2A%2Afun%2A%2A%2A%20
>    title*3="isn't it!"

And in section 7 "Modificatons to MIME ABNF" it clearly states that the
counting
shall begin with 1. Note at the end of page 5, intial-section is defined
as:

>   initial-section := "*1"

And on the start of page 6 you have the definition:

>   other-sections := "*" (("2" / "3" / "4" / "5" /
>                           "6" / "7" / "8" / "9") *DIGIT) /
>                          ("1" 1*DIGIT))

If you follow this ABNF, the counting must start at 1 and not 0.

The other thing about RFC 2184 that is clearly wrong, is the change of
the ABNF given in RFC 2047 for encoded-words. RFC 2184 reads:

>   The ABNF given in RFC 2047 for encoded-words is:
>
>   encoded-word := "=?" charset "?" encoding "?" encoded-text "?="
>
>   This specification changes this ABNF to:
>
>   encoded-word := "=?" charset ["*" language] "?" encoded-text "?="

The correct change would have be:

   This specification changes this ABNF to:

   encoded-word := "=?" charset ["*" language] "?" encoding "?"
encoded-text "?="

-- 
Terje Bråten  E-mail: [email-masked]