RFC Errata


Errata Search

 
Source of RFC  
Summary Table Full Records

Found 1 record.

Status: Reported (1)

RFC 7405, "Case-Sensitive String Support in ABNF", December 2014

Source of RFC: IETF - NON WORKING GROUP
Area Assignment: art

Errata ID: 5334
Status: Reported
Type: Technical

Reported By: YU HengChun
Date Reported: 2018-04-25

Section 2.2 says:

2.2.  ABNF Definition of ABNF - char-val

         char-val       =  case-insensitive-string /
                           case-sensitive-string

         case-insensitive-string =
                           [ "%i" ] quoted-string

         case-sensitive-string =
                           "%s" quoted-string

         quoted-string  =  DQUOTE *(%x20-21 / %x23-7E) DQUOTE
                                ; quoted string of SP and VCHAR
                                ;  without DQUOTE

It should say:

2.2.  ABNF Definition of ABNF - char-val

         char-val       =  case-insensitive-string /
                           case-sensitive-string

         case-insensitive-string =
                                DQUOTE *(%x20-21 / %x23-7E) DQUOTE
                                ; quoted string of SP and VCHAR
                                ;  without DQUOTE

         case-sensitive-string  =
                                QUOTE *(%x20-26 / %x28-7E) QUOTE
                                ; quoted string of SP and VCHAR
                                ;  without QUOTE

         QUOTE       = %x27     ; '

Notes:

Use "%s' / '%i' hard to write. In addition to writing more characters, there are the following problems:

rule = (%s"if" / %s"elif") condition (%s"then" / LF)

Why not use single quotes directly?

rule = ('if' / 'elif') condition ('then' / LF)

Even if single quotation marks cannot be used, the workaround can be complicated:

rule = %s( "if" / "elif" ) condition (%s"then" / LF)

Report New Errata