W3C home > Mailing lists > Public > www-amaya@w3.org > July to September 1999

Re: Amaya mishandling HREF values that contain ampersand

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>
Message-ID: <Pine.SOL.4.10a.9907061426030.25018-100000@orange.csi.cam.ac.uk>
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 &amp; .  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 &amp;
> + the HREF no longer works correctly in Amaya.
> 
> Surely, in a URL an ampersand is escaped as %26 ?
> 
> &amp; 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&#38;y=2"> or <A 
   href="http://host/?x=1&amp;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

This archive was generated by hypermail 2.3.1 : Tuesday, 1 April 2014 11:01:32 UTC