RFC Errata
Found 1 record.
Status: Reported (1)
RFC 7405, "Case-Sensitive String Support in ABNF", December 2014
Source of RFC: IETF - NON WORKING GROUPArea Assignment: art
Errata ID: 5334
Status: Reported
Type: Technical
Publication Format(s) : TEXT
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)
