- From: Laurens Holst <lholst@students.cs.uu.nl>
- Date: Thu, 17 Jan 2008 15:22:30 +0100
- To: "public-html@w3.org" <public-html@w3.org>
- Message-ID: <478F64A6.30807@students.cs.uu.nl>
Responding to one of the issues on the Web Forms 2 issues list: > Thomas Broyer wrote: >> 2007/7/1, Philip Taylor: >>> WF2 says: >>> >>> "When the [form element's action] attribute is absent, UAs must act >>> as if the action attribute was the empty string, which is a relative >>> URI reference, and would thus point to the current document (or the >>> specified base URI, if any)." >>> >>> But: >>> http://software.hixie.ch/utilities/js/live-dom-viewer/?%3C%21DOCTYPE%20html%3E%0D%0A%3Cbase%20href%3D%22http%3A//google.com%22%3E%3Cform%3E%3Cinput%20type%3Dsubmit%3E >>> >>> >>> In IE7, FF2, FF3, Opera 9.2, it ignores the base URI and always >>> submits to the current page. In Safari 3, it does take account of the >>> base URI. In all, <form action=""> does the same as <form>. In all, >>> <form action="."> does take account of the base URI. Perhaps it would >>> be sensible to follow the majority. >> >> Wouldn't that be a violation of RFC3986? >> >> http://tools.ietf.org/html/rfc3986#section-4.4 >> >> Are there pages in the wild relying on that behavior (i.e. has Apple >> received a bug report for pages breaking in Safari? [1]) >> >> [1] Hmm, seems like there is such a bug report, with people >> misunderstanding RFC3986 §4.4 and relying on such broken behaviors: >> http://bugs.webkit.org/show_bug.cgi?id=7763 >> (for the first example, it's at >> http://www.polytechnique.fr/eleves/login.php, there's a <base >> href="http://www.polytechnique.fr/eleves/"> and <form action=""> >> expected to be POSTed to login.php) > > See also https://bugzilla.mozilla.org/show_bug.cgi?id=297761 where it > was reported that we changed the behavior for firefox 1 and thereby > broke sites. > > I actually seem to recall the spec saying that action="" meant to submit > to the current page. Though I can't find that in the spec right now so I > might be wrong. > > So the answer is that this is a web compat issue. How much of the web > would break if we changed this behavior is anyones guess unfortunately. > > / Jonas > As described in section 5.2 item 2) [1] of RFC2396, and shown in section C.1. [2] and C.2. [3], it is specified behaviour for URIs that are empty (<>) or only contain a hash (<#s>) to resolve to the current document, and not the base URI. So Safari is wrong, Safari’s bug 7763 is right, the other browsers are right, and the Web Forms 2 specification is wrong. ~Grauw [1] http://rfc.net/rfc2396.html#s5.2. [2] http://rfc.net/rfc2396.html#sC.1. [3] http://rfc.net/rfc2396.html#sC.2. -- Ushiko-san! Kimi wa doushite, Ushiko-san nan da!! ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Laurens Holst, student, university of Utrecht, the Netherlands. Website: www.grauw.nl. Backbase employee; www.backbase.com.
Received on Thursday, 17 January 2008 14:22:49 UTC