User:Cjones/ISSUE-196

From W3C Wiki


ISSUE-196: No change for User Agent HTTP response handling behaviour

Summary

This is a change proposal advocating for the resolution of ISSUE-196 by means of no-change in the HTML specification.

Rationale

The issue was raised in response to concerns over specific handling of some 2xx Success HTTP response codes by User Agents. Through investigation while there may be some divergent behaviour with regards to individual implementations, the HTTP specification currently provides the definition of expected User Agent behaviour and as such these implementations should be regarded as non-conformant HTTP agents and not non-conformant HTML implementations.

The HTML specification does not impose conformance requirements on the implementation of HTTP engines in the same manner that HTTP specification does not impose conformance requirements on the implementation of HTML engines. This would invariably introduce a state of inter-dependence between the specifications and deteriorate the otherwise principal authority of the HTTP protocol and its specification process to to define and control the standardization, interoperability and further advancement of the protocol.

Details

  1. Identified divergent behaviour of User Agents should be raised within the HTTP specification process for greater clarity or User Agent bug reporting processes for highlighting non-conformant behaviour for correction.

Impact

Positive Effects

  • The specification does not introduce or impose additional restrictions on HTTP processing specifically within the context of HTML
  • The HTTP specification is maintained as the single authoritative source for conformant behaviour or otherwise

Negative Effects

  • The may be some HTTP status codes which require further specification for the effective realization of their benefits and this is reliant on the success of external standardization and User Agent bug processes

Conformance Classes Changes

  • None

Risks

  • User Agents continue to display divergent behaviours due to the lack of specificity in the HTTP specification requiring servers to either customize their response based on snooping HTTP headers or tunneling all responses through predictable behavioural status codes

References

  • Browser HTTP Response Handling Tests [1]
  • Bug 10671 - consider adding support for PUT and DELETE as form methods [2]
  • ISSUE-196: Define user agent http response handling behaviour [3]
  • Hypertext Transfer Protocol -- HTTP/1.1 [4]