Diffs for the msg-id issue in -usefor

Harald Alvestrand <[email protected]> Mon, 02 Nov 2009 06:43:15 +0100
Newsgroups gmane.ietf.usenet.format
Message-ID <[email protected]>
This note sent to make sure I have everything in one place, and to make 
sure I have informed the WG of what I'm planning to do.

Apologies for letting this drift so long.

Msg-id as defined in RFC 2822:


message-id      =       "Message-ID:" msg-id CRLF

in-reply-to     =       "In-Reply-To:" 1*msg-id CRLF

references      =       "References:" 1*msg-id CRLF

msg-id          =       [CFWS] "<" id-left "@" id-right ">" [CFWS]

id-left         =       dot-atom-text / no-fold-quote / obs-id-left

id-right        =       dot-atom-text / no-fold-literal / obs-id-right

no-fold-quote   =       DQUOTE *(qtext / quoted-pair) DQUOTE

no-fold-literal =       "[" *(dtext / quoted-pair) "]"

Msg-id as defined in RFC 5322:

   msg-id          =   [CFWS] "<" id-left "@" id-right ">" [CFWS]

   id-left         =   dot-atom-text / obs-id-left

   id-right        =   dot-atom-text / no-fold-literal / obs-id-right

   no-fold-literal =   "[" *dtext "]"

Msg-id as defined in -usefor:


   msg-id          =  "<" msg-id-core ">"
                      ; maximum length is 250 octets

   msg-id-core     =  id-left "@" id-right

   id-left         =  dot-atom-text / no-fold-quote

   id-right        =  dot-atom-text / no-fold-literal

   no-fold-quote   =  DQUOTE
                         ( "." *mqtext /
                           *mqtext "." /
                           *mqtext mqspecial *mqtext )
                         DQUOTE

   mqtext          =  atext / "." / mqspecial

   mqspecial       =  "(" / ")" /      ; same as specials except
                      "<" /            ; "\" and DQUOTE quoted
                      "[" / "]" /      ; "." doubled and ">" omitted
                      ":" / ";" /
                      "@" / "," /
                      ".." / "\\" / "\" DQUOTE

   no-fold-literal =  "[" *( mdtext / "\[" / "\]" / "\\" ) "]"

   mdtext          =  %d33-61 /        ; The rest of the US-ASCII
                      %d63-90 /        ; characters not including
                      %d94-126         ; ">", "[", "]", or "\"


msg-id as proposed by Charles to allow us to reference 5322:

   message-id      =  "Message-ID:" SP *WSP msg-id *WSP CRLF

   msg-id          =  "<" msg-id-core ">"
                      ; maximum length is 250 octets

   msg-id-core     =  id-left "@" id-right

   id-left         =  dot-atom-text

   id-right        =  dot-atom-text / no-fold-literal


   no-fold-literal =  "[" **mdtext* "]"

   mdtext          =  %d33-61 /        ; The rest of the US-ASCII
                      %d63-90 /        ; characters not including
                      %d94-126         ; ">", "[", "]", or "\"

The differences between this proposal and 5322 are:
- No CFWS before or after
- No obs-* productions
- No > characters inside a no-fold-literal

I think this is appropriate, and will tell the RFC Editor that he should make that change.

                   Harald