Re: Non-hierarchical base URLs (was Re: draft-abarth-url-01 uploaded)

On Apr 27, 2011, at 6:52 PM, Adam Barth wrote:
> A lack of interoperability is not a license to make a free choice.
> There is a "best" behavior we can choose, and it's not what RFC 3986
> says.

RFC3986 defines how to parse valid URI references and transform
them to absolute URI form when given a valid base URI.  The IETF
defines interoperability in terms of rough consensus and running
code among all implementations, including non-browsers, and the
Internet Standard is based on what has been implemented in fact
by hundreds of independent vendors and deployed in thousands of
applications.

If you can prove that a majority of implementations differ in
observable result from what RFC3986 defines, then we can go
though the entire standards process again or publish errata.
However, such a thing is not even remotely in scope for IRI,
nor is it necessary for HTML5.

As you well know, what HTML5 needs is a definition for parsing
arbitrary attribute values in document encoding.  Those attribute
values are not URLs.  They aren't even URI references.  They are
one or more space-separated or space-ignoring strings in an HTML
attribute encoding, and each reference needs to be extracted and
transcoded before the definitions in 3986 are even applicable.

However, for the subset of possible references that do happen
to match what are called valid URI references by RFC3986, then
we have already tested consensus and deployed many implementations
that conform exactly to the results given in RFC3986.  If you
find a difference between that and a single browser's behavior,
then that browser has a bug and should be fixed.

Rough consensus is determined by testing as many implementations
as possible, including those listed at

   http://curl.haxx.se/docs/comparison-table.html
   http://curl.haxx.se/libcurl/competitors.html
   http://en.wikipedia.org/wiki/Comparison_of_web_browsers
   http://en.wikipedia.org/wiki/List_of_content_management_systems
   http://xmlsoft.org/html/libxml-uri.html#xmlURIPtr
   http://lwp.interglacial.com/ch04_01.htm
   http://hackage.haskell.org/packages/archive/network/2.2.1.3/doc/html/Network-URI.html
   https://github.com/ajrisi/fsm/blob/master/examples/uri-rfc3986.c
   ...

or feel free to check out some of the 3.3 million hits for

   http://www.google.com/search?q=3986+parse

....Roy

Received on Thursday, 28 April 2011 05:12:57 UTC