Skip to content

Commit 0dcb167

Browse files
committed
[css2] Issues 129, 139, 140 from http://wiki.csswg.org/spec/css2.1
--HG-- extra : convert_revision : svn%3A73dc7c4b-06e6-40f3-b4f7-9ed1dbc14bfc/trunk%403032
1 parent fd6cf78 commit 0dcb167

1 file changed

Lines changed: 25 additions & 9 deletions

File tree

css2/syndata.src

Lines changed: 25 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
22
<html lang="en">
3-
<!-- $Id: syndata.src,v 2.179 2010-08-23 23:24:17 bbos Exp $ -->
3+
<!-- $Id: syndata.src,v 2.180 2010-09-29 15:52:58 bbos Exp $ -->
44
<head>
55
<title>Syntax and basic data types</title>
66
<meta name="editor" lang="tr" content="Tantek &Ccedil;elik">
@@ -58,13 +58,15 @@ Lex, in case of multiple matches, the longest match determines the token.
5858
<tr><td>IDENT </td><td><code><var>{ident}</var></code></td></tr>
5959
<tr><td>ATKEYWORD </td><td><code>@<var>{ident}</var></code></td></tr>
6060
<tr><td>STRING </td><td><code><var>{string}</var></code></td></tr>
61-
<tr><td>INVALID </td><td><code><var>{invalid}</var></code></td></tr>
61+
<tr><td>BAD_STRING </td><td><code><var>{badstring}</var></code></td></tr>
62+
<tr><td>BAD_URI </td><td><code><var>{baduri}</var></code></td></tr>
63+
<tr><td>BAD_COMMENT </td><td><code><var>{badcomment}</var></code></td></tr>
6264
<tr><td>HASH </td><td><code>#<var>{name}</var></code></td></tr>
6365
<tr><td>NUMBER </td><td><code><var>{num}</var></code></td></tr>
6466
<tr><td>PERCENTAGE </td><td><code><var>{num}</var>%</code></td></tr>
6567
<tr><td>DIMENSION </td><td><code><var>{num}{ident}</var></code></td></tr>
6668
<tr><td>URI </td><td><code>url\(<var>{w}{string}{w}</var>\)<br>
67-
|url\(<var>{w}</var>([!#$%&amp;*-~]|<var>{nonascii}</var>|<var>{escape}</var>)*<var>{w}</var>\)</code></td></tr>
69+
|url\(<var>{w}</var>([!#$%&amp;*-\[\]-~]|<var>{nonascii}</var>|<var>{escape}</var>)*<var>{w}</var>\)</code></td></tr>
6870
<tr><td>UNICODE-RANGE </td><td><code>u\+[0-9a-f?]{1,6}(-[0-9a-f]{1,6})?</code></td></tr>
6971
<tr><td>CDO </td><td><code>&lt;!--</code></td></tr>
7072
<tr><td>CDC </td><td><code>--&gt;</code></td></tr>
@@ -103,9 +105,16 @@ the above rules, and neither a single nor a double quote</var>
103105
<tr><td>string </td><td><code><var>{string1}</var>|<var>{string2}</var></code></td></tr>
104106
<tr><td>string1 </td><td><code>\"([^\n\r\f\\"]|\\{nl}|<var>{escape}</var>)*\"</code></td></tr>
105107
<tr><td>string2 </td><td><code>\'([^\n\r\f\\']|\\{nl}|<var>{escape}</var>)*\'</code></td></tr>
106-
<tr><td>invalid </td><td><code><var>{invalid1}</var>|<var>{invalid2}</var></code></td></tr>
107-
<tr><td>invalid1</td><td><code>\"([^\n\r\f\\"]|\\{nl}|<var>{escape}</var>)*</code></td></tr>
108-
<tr><td>invalid2</td><td><code>\'([^\n\r\f\\']|\\{nl}|<var>{escape}</var>)*</code></td></tr>
108+
<tr><td>badstring </td><td><code><var>{badstring1}</var>|<var>{badstring2}</var></code></td></tr>
109+
<tr><td>badstring1 </td><td><code>\"([^\n\r\f\\"]|\\{nl}|<var>{escape}</var>)*\\?</code></td></tr>
110+
<tr><td>badstring2 </td><td><code>\'([^\n\r\f\\']|\\{nl}|<var>{escape}</var>)*\\?</code></td></tr>
111+
<tr><td>badcomment </td><td><code><var>{badcomment1}</var>|<var>{badcomment2}</var></code></td></tr>
112+
<tr><td>badcomment1 </td><td><code>\/\*[^*]*\*+([^/*][^*]*\*+)*</code></td></tr>
113+
<tr><td>badcomment2 </td><td><code>\/\*[^*]*(\*+[^/*][^*]*)*</code></td></tr>
114+
<tr><td>baduri </td><td><code><var>{baduri1}</var>|<var>{baduri2}</var>|<var>{baduri3}</var></code></td></tr>
115+
<tr><td>baduri1 </td><td><code>url\(<var>{w}</var>([!#$%&*-~]|<var>{nonascii}</var>|<var>{escape}</var>)*<var>{w}</var></code></td></tr>
116+
<tr><td>baduri2 </td><td><code>url\(<var>{w}</var><var>{string}</var><var>{w}</var></code></td></tr>
117+
<tr><td>baduri3 </td><td><code>url\(<var>{w}</var><var>{badstring}</var></code></td></tr>
109118
<tr><td>nl </td><td><code>\n|\r\n|\r|\f</code></td></tr>
110119
<tr><td>w </td><td><code>[ \t\r\n\f]*</code></td></tr>
111120
</table>
@@ -130,10 +139,17 @@ property : IDENT;
130139
value : [ any | block | ATKEYWORD S* ]+;
131140
any : [ IDENT | NUMBER | PERCENTAGE | DIMENSION | STRING
132141
| DELIM | URI | HASH | UNICODE-RANGE | INCLUDES
133-
| DASHMATCH | ':' | FUNCTION S* any* ')'
134-
| '(' S* any* ')' | '[' S* any* ']' ] S*;
142+
| DASHMATCH | ':' | FUNCTION S* [any|unsused]* ')'
143+
| '(' S* [any|unused]* ')' | '[' S* [any|unused]* ']'
144+
] S*;
145+
unused : block | ATKEYWORD S* | ';' S* | CDO S* | CDC S*;
135146
</pre>
136147

148+
<p>The "unused" production is not used in CSS and will not be used by
149+
any future extension. It is included here only to help with error
150+
handling. (See <a href="#parsing-errors">4.2 "Rules for handling
151+
parsing errors."</a>)
152+
137153
<p><a name="comment">COMMENT</a> tokens do not occur
138154
in the grammar (to keep it readable), but any number of these tokens
139155
may appear anywhere outside other tokens. (Note, however, that a
@@ -263,7 +279,7 @@ href="#parsing-errors">rules for handling parsing errors</a>. However, because t
263279
[[UNICODE]] and [[ISO10646]]).
264280
</p>
265281
</li>
266-
<li> In CSS&nbsp;2.1, a backslash (\) character may indicate one
282+
<li> In CSS&nbsp;2.1, a backslash (\) character can indicate one
267283
of three types of <span class="index-def" title="backslash
268284
escapes"> <a name="escaped-characters">character
269285
escape.</a></span> Inside a CSS comment, a backslash stands for

0 commit comments

Comments
 (0)