- From: Bert Bos <bert@w3.org>
- Date: Tue, 26 Feb 2008 20:33:39 +0100
- To: Andrei Polushin <polushin@gmail.com>
- Cc: www-style@w3.org
On Thursday 21 February 2008 14:07, Andrei Polushin wrote:
> In [CSS21, 4.3.4 URLs and URIs][1]:
> > Some characters appearing in an unquoted URI, such as
> > parentheses, commas, whitespace characters, single quotes (')
> > and double quotes ("), must be escaped with a backslash so that
> > the resulting URI value is a URI token: '\(', '\)', '\,'.
>
> ### Issue 1 ###
>
> The prose should provide some reasons for escaping ',' with a
> backslash. An implementor needs to know the rationale and the intent
> for that.
The specification would become very long if every rule needed to have
its history written in the spec..
But to answer the question about the comma: We wanted to preserve the
possibility of adding arguments to the url(), e.g.,
url(http://example.com/,cookie=hfdh455f).
It is unlikely we'll ever change the url syntax, but at least we still
can (somewhat...) if we want.
>
> ### Issue 2 ###
>
> Backslash character itself should be also escaped with an another
> backslash, and that fact should be mentioned explicitly.
Isn't that obvious?
>
> As a result of the above,
>
> ### Issue 3 ###
>
> In [CSS21, G.2 Lexical scanner][2]:
> > url ([!#$%&*-~]|{nonascii}|{escape})*
>
> This production does not exclude comma or backslash from the range of
>
> characters allowed in unquoted URI. Probably, it should look like:
> > url ([!#$%&*+\--\[\]-~]|{nonascii}|{escape})*
Yes, that's indeed better. I'll put it on the issues list.
>
> (not sure, I'm not familiar with Flex).
>
>
> [1]: http://www.w3.org/TR/2007/CR-CSS21-20070719/syndata.html#uri
> [2]: http://www.w3.org/TR/2007/CR-CSS21-20070719/grammar.html#scanner
Bert
--
Bert Bos ( W 3 C ) http://www.w3.org/
http://www.w3.org/people/bos W3C/ERCIM
bert@w3.org 2004 Rt des Lucioles / BP 93
+33 (0)4 92 38 76 92 06902 Sophia Antipolis Cedex, France
Received on Tuesday, 26 February 2008 19:33:57 UTC