RFC Errata
RFC 3986, "Uniform Resource Identifier (URI): Generic Syntax", January 2005
Note: This RFC has been updated by RFC 6874, RFC 7320, RFC 8820
Source of RFC: IETF - NON WORKING GROUPArea Assignment: app
Errata ID: 4293
Status: Rejected
Type: Technical
Publication Format(s) : TEXT
Reported By: Cesar Crusius
Date Reported: 2015-03-07
Rejected by: Barry Leiba
Date Rejected: 2015-03-07
Section Appendix B says:
^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?
It should say:
^(([^:/?#]+):)(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?
Notes:
The regular expression makes the scheme part optional, but both the ABNF in Appendix A and the text in Section 3 state that the scheme is in fact required.
--VERIFIER NOTES--
The context is that this is for parsing references:
The following line is the regular expression for breaking-down a
well-formed URI reference into its components.
The ABNF makes it clear that the scheme is, in fact, NOT required for URI references (see the ABNF for the "relative-ref" production).