- From: E.E. Mellor <eem21@cam.ac.uk>
- Date: Tue, 6 Jul 1999 14:27:05 +0100 (BST)
- To: Malcolm Austen <malcolm.austen@computing-services.oxford.ac.uk>
- cc: "Alan J. Flavell" <flavell@a5.ph.gla.ac.uk>, Amaya List <www-amaya@w3.org>
On Tue, 6 Jul 1999, Malcolm Austen wrote: > On Tue, 6 Jul 1999, Alan J. Flavell wrote: > > + The archive contains a message > + http://lists.w3.org/Archives/Public/www-amaya/1999AprJun/0082.html > > I don't recall the message and the archive has just timed out on me ... > > + I recently got involved elsewhere in a discussion of this issue, i.e > + when forming an HREF to a URL that contains an ampersand, the need to > + represent the ampersand as & . In general, omitting to do so will > + result in failure of HTML syntax validation (on the grounds of an > + undefined entity), as I'm sure is well known. But after writing & > + the HREF no longer works correctly in Amaya. > > Surely, in a URL an ampersand is escaped as %26 ? > > & is the escape in html and the (quoted) string value in an href isn't > html. Does it need to be escaped in the URL? - I haven't checked the rules > but don't the quotes protect it from the (html) "&" escape mechanism? B.2.2 Ampersands in URI attribute values The URI that is constructed when a form is submitted may be used as an anchor-style link (e.g., the href attribute for the A element). Unfortunately, the use of the "&" character to separate form fields interacts with its use in SGML attribute values to delimit character entity references. For example, to use the URI "http://host/?x=1&y=2" as a linking URI, it must be written <A href="http://host/?x=1&y=2"> or <A href="http://host/?x=1&y=2">. We recommend that HTTP server implementors, and in particular, CGI implementors support the use of ";" in place of "&" to save authors the trouble of escaping "&" characters in this manner. -- HTML 4.0 Specification. Ewan Mellor.
Received on Tuesday, 6 July 1999 09:27:11 UTC