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

On Wed, Apr 27, 2011 at 10:12 PM, Roy T. Fielding <fielding@gbiv.com> wrote:
> 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.

Indeed.

> 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.

We've had implementors state on this list that they aren't going to do
that.  In fact, they have stated that they're going to make their
implementations less conformant with RFC 3986 because the requirements
in RFC 3986 don't match the requirements they face the in real world.

We can ignore what these implementors want, but that just means
they'll ignore us.

Adam

Received on Thursday, 28 April 2011 06:30:57 UTC