Subject: Proposed erratum to definition of "qdtext" in RFC 2616

From: Jamie Lokier <[email-masked]>
Date: Mon, 15 Mar 2004 17:10:54 +0000

RFC 2616 reads:

   A string of text is parsed as a single word if it is quoted using
   double-quote marks.

       quoted-string  = ( <"> *(qdtext | quoted-pair ) <"> )
       qdtext         = <any TEXT except <">>

   The backslash character ("\") MAY be used as a single-character
   quoting mechanism only within quoted-string and comment constructs.

       quoted-pair    = "\" CHAR

I think the qdtext syntax should say this instead:

       qdtext         = <any TEXT except <"> and "\">

(It might also want to say "excluding" instead of "except", for
consistency with ctext a few lines earlier).

I know it seems trivial.  I just noticed because I wrote a regular
expression based on the RFC 2616 definition, and that allows "foo\"
as a quoted-string.  That's not intended, is it?

Btw, is there a specific place to send errata suggestions?

-- Jamie

---

From: Alex Rousskov <[email-masked]>
Date: Mon, 15 Mar 2004 13:29:01 -0700 (MST)

>        qdtext         = <any TEXT except <"> and "\">

I agree. The RFC 2616 rule is ambiguous. The intent is obvious (to me)
but the formal grammar should be fixed.

Alex.