Mark Anderson wrote:
>
> "Phillip M. Jones, C.E.T." wrote:
> >
> > Gervase Markham wrote:
> > >
> > > There's a bigger issue here. Who do we respect more? Old and broken
> > > browsers, or W3C and other internet standards (such as RFCs)? If we "find
> > > a meaning" for this sort of broken URL, what else should we guess at
> > > interpreting?
> > >
> > > Computers have to read this stuff, not humans.
> >
> > The old Broken Browsers!
> >
> > Standards are wonderful; but, if they declare 99.999% of what done on
> > the net currently wrong and unusable what good are the Standards.
>
> This case is absolutely wrong. It's an abuse of a loophole in a
> previous RFC that was fixed in a subsequent RFC to prevent something
> like this from occurring. But people ignored that, and sadly older
> browsers used it. I don't think there should be any leniency on such a
> link; it's broken, and should be flagged to the user as such. There's
> no correct guess, because according to the relevant RFC, this *has* to
> be interpreted as an absolute URL. It's Just Plain Wrong.
No, RFC 2396 allows backwards compatibility to RFC 1630.
RFC 2396 dates from August 1998 and isn't a real standard
yet (it is a /draft/ standard).
So IMHO it would still be a good idea to support such URLs.
But we have bugs in Mozilla with higher priority.
>From RFC 2396, 5.2.:
--8<----
3) If the scheme component is defined, indicating that the reference
starts with a scheme name, then the reference is interpreted as an
absolute URI and we are done. Otherwise, the reference URI's
scheme is inherited from the base URI's scheme component.
Due to a loophole in prior specifications [RFC1630], some parsers
allow the scheme name to be present in a relative URI if it is the
same as the base URI scheme. Unfortunately, this can conflict
with the correct parsing of non-hierarchical URI. For backwards
compatibility, an implementation may work around such references
by removing the scheme if it matches that of the base URI and the
scheme is known to always use the <hier_part> syntax. The parser
can then continue with the steps below for the remainder of the
reference components. Validating parsers should mark such a
misformed relative reference as an error.
--8<----
Clarence