Wed, 04 Sep 2013 18:46:11 +0100
[css-syntax] Revert (parts of) "Revert <unicode-range> changes from CSS 2.1"
This reverts parts of commit 23590701e57879cfb0ba67e47524c2f2b889fe74.
Namely:
* The tokens have a pair of integers, rather than strings or "a range".
* Keep the "Consume a unicode-range token" section as in earlier EDs.
* Remove the "Set the unicode-range’s range" section: the tokenizer does
no error handling / normalization beyond parsing hex digits into
integers.
1.1 --- a/css-syntax/Diagrams.src.html Wed Sep 04 16:48:16 2013 +0200 1.2 +++ b/css-syntax/Diagrams.src.html Wed Sep 04 18:46:11 2013 +0100 1.3 @@ -153,10 +153,15 @@ 1.4 'U', 1.5 'u'), 1.6 '+', 1.7 - Sequence(OneOrMore(Choice(0, NonTerminal('hex digit'), '?'), Comment('1-6 times'))), 1.8 - Optional(Sequence( 1.9 - '-', 1.10 - OneOrMore(NonTerminal('hex digit'), Comment('1-6 times')))))); 1.11 + Choice(0, 1.12 + Sequence(OneOrMore(NonTerminal('hex digit'), Comment('1-6 times'))), 1.13 + Sequence( 1.14 + ZeroOrMore(NonTerminal('hex digit'), Comment('1-5 times')), 1.15 + OneOrMore('?', Comment('1 to (6 - digits) times'))), 1.16 + Sequence( 1.17 + OneOrMore(NonTerminal('hex digit'), Comment('1-6 times')), 1.18 + '-', 1.19 + OneOrMore(NonTerminal('hex digit'), Comment('1-6 times')))))); 1.20 1.21 add('〈include-match〉', Diagram('~=')); 1.22
2.1 --- a/css-syntax/Overview.html Wed Sep 04 16:48:16 2013 +0200 2.2 +++ b/css-syntax/Overview.html Wed Sep 04 18:46:11 2013 +0100 2.3 @@ -14,7 +14,7 @@ 2.4 </a></p> 2.5 <h1 class="p-name no-ref" id=title>CSS Syntax Module Level 3</h1> 2.6 <h2 class="no-num no-toc no-ref heading settled heading" id=subtitle><span class=content>Editor’s Draft, 2.7 - <span class=dt-updated><span class=value-title title=20130901>1 September 2013</span></span></span></h2> 2.8 + <span class=dt-updated><span class=value-title title=20130904>4 September 2013</span></span></span></h2> 2.9 <div data-fill-with=spec-metadata><dl><dt>This version:<dd><a class=u-url href=http://dev.w3.org/csswg/css-syntax>http://dev.w3.org/csswg/css-syntax</a><dt>Editor’s Draft:<dd><a href=http://dev.w3.org/csswg/css-syntax>http://dev.w3.org/csswg/css-syntax</a><dt>Previous Versions:<dd><a href=http://www.w3.org/TR/2003/WD-css3-syntax-20030813/ rel=previous>http://www.w3.org/TR/2003/WD-css3-syntax-20030813/</a> 2.10 <dt>Feedback:</dt> 2.11 <dd><a href="mailto:www-style@w3.org?subject=%5Bcss-syntax%5D%20feedback">www-style@w3.org</a> 2.12 @@ -526,18 +526,15 @@ 2.13 2.14 <li> 2.15 <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> tokens have 2.16 - a <dfn data-dfn-type=dfn data-noexport="" id=unicode-range-start title=unicode-range-start>start<a class=self-link href=#unicode-range-start></a></dfn> made of one to six <a href=#hex-digit>hex digits</a> or U+003F QUESTION MARK (?) code points, 2.17 - and and optional <dfn data-dfn-type=dfn data-noexport="" id=unicode-range-end title=unicode-range-end>end<a class=self-link href=#unicode-range-end></a></dfn> made of one to six <a href=#hex-digit>hex digits</a>. 2.18 + a <dfn data-dfn-type=dfn data-noexport="" id=unicode-range-start title="start of the range">start<a class=self-link href=#unicode-range-start></a></dfn> 2.19 + and an <dfn data-dfn-type=dfn data-noexport="" id=unicode-range-end title="end of the range">end<a class=self-link href=#unicode-range-end></a></dfn>, 2.20 + a pair of integers. 2.21 + 2.22 </ul> 2.23 2.24 <p class=note> Note: The type flag of hash tokens is used in the Selectors syntax <a data-biblio-type=informative data-link-type=biblio href=#select title=SELECT>[SELECT]</a>. 2.25 Only hash tokens with the "id" type are valid <a href=http://www.w3.org/TR/selectors/#id-selectors>ID selectors</a>. 2.26 2.27 -<p class=note> Note: The syntax of <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> tokens defined in this specification 2.28 - is a super-set of the <a class="production css-code" data-link-type=type href=http://dev.w3.org/csswg/css-fonts-3/#urange-value><urange></a> value accepted by <a class=css data-link-type=maybe href=http://dev.w3.org/csswg/css-fonts-3/#at-font-face-rule>@font-face</a>’s <a class=property data-link-type=propdesc href=http://dev.w3.org/csswg/css-fonts-3/#descdef-unicode-range title=unicode-range>unicode-range</a> descriptor. <a data-biblio-type=informative data-link-type=biblio href=#css3-fonts title=CSS3-FONTS>[CSS3-FONTS]</a> 2.29 - For example, <span class=css data-link-type=maybe>U+4??6</span> and <span class=css data-link-type=maybe>U+1??-300</span> are valid <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> tokens 2.30 - but not valid <a class="production css-code" data-link-type=type href=http://dev.w3.org/csswg/css-fonts-3/#urange-value><urange></a> values. 2.31 - 2.32 <p class=note> Note: As a technical note, 2.33 the tokenizer defined here requires only three <a href=#code-point>code points</a> of look-ahead. 2.34 The tokens it produces are designed to allow Selectors to be parsed with one token of look-ahead, 2.35 @@ -567,6 +564,7 @@ 2.36 The generated SVG is copied here so that JavaScript is not required 2.37 to view the spec. 2.38 --> 2.39 + 2.40 <dl> 2.41 <dt id=comment-diagram><a class=self-link href=#comment-diagram></a>comment</dt> 2.42 <dd><svg class=railroad-diagram height=81 width=497><g transform="translate(.5 .5)"><path d="M 20 31 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 41h10"></path><g><path d="M50 41h0"></path><path d="M86 41h0"></path><rect height=22 rx=10 ry=10 width=36 x=50 y=30></rect><text x=68 y=45>/*</text></g><path d="M86 41h10"></path><g><path d="M96 41h0"></path><path d="M400 41h0"></path><path d="M96 41a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M116 21h264"></path></g><path d="M380 21a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M96 41h20"></path><g><path d="M116 41h0"></path><path d="M380 41h0"></path><path d="M116 41h10"></path><g><path d="M126 41h0"></path><path d="M370 41h0"></path><rect height=22 width=244 x=126 y=30></rect><text x=248 y=45>anything but * followed by /</text></g><path d="M370 41h10"></path><path d="M126 41a10 10 0 0 0 -10 10v0a10 10 0 0 0 10 10"></path><g><path d="M126 61h244"></path></g><path d="M370 61a10 10 0 0 0 10 -10v0a10 10 0 0 0 -10 -10"></path></g><path d="M380 41h20"></path></g><path d="M400 41h10"></path><g><path d="M410 41h0"></path><path d="M446 41h0"></path><rect height=22 rx=10 ry=10 width=36 x=410 y=30></rect><text x=428 y=45>*/</text></g><path d="M446 41h10"></path><path d="M 456 41 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 2.43 @@ -617,7 +615,7 @@ 2.44 <dd><svg class=railroad-diagram height=62 width=233><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 31h10"></path><g><path d="M50 31h0"></path><path d="M134 31h0"></path><rect height=22 width=84 x=50 y=20></rect><text x=92 y=35>〈number〉</text></g><path d="M134 31h10"></path><path d="M144 31h10"></path><g><path d="M154 31h0"></path><path d="M182 31h0"></path><rect height=22 rx=10 ry=10 width=28 x=154 y=20></rect><text x=168 y=35>%</text></g><path d="M182 31h10"></path><path d="M 192 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 2.45 2.46 <dt id=〈unicode-range〉-diagram><a class=self-link href=#〈unicode-range〉-diagram></a>〈unicode-range〉</dt> 2.47 - <dd><svg class=railroad-diagram height=132 width=589><g transform="translate(.5 .5)"><path d="M 20 31 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><g><path d="M40 41h0"></path><path d="M108 41h0"></path><path d="M40 41h20"></path><g><path d="M60 41h0"></path><path d="M88 41h0"></path><rect height=22 rx=10 ry=10 width=28 x=60 y=30></rect><text x=74 y=45>U</text></g><path d="M88 41h20"></path><path d="M40 41a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M60 71h0"></path><path d="M88 71h0"></path><rect height=22 rx=10 ry=10 width=28 x=60 y=60></rect><text x=74 y=75>u</text></g><path d="M88 71a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M108 41h10"></path><g><path d="M118 41h0"></path><path d="M146 41h0"></path><rect height=22 rx=10 ry=10 width=28 x=118 y=30></rect><text x=132 y=45>+</text></g><path d="M146 41h10"></path><g><path d="M156 41h0"></path><path d="M328 41h0"></path><path d="M156 41h10"></path><g><path d="M166 41h0"></path><path d="M318 41h0"></path><path d="M166 41h10"></path><g><path d="M176 41h0"></path><path d="M308 41h0"></path><path d="M176 41h20"></path><g><path d="M196 41h0"></path><path d="M288 41h0"></path><rect height=22 width=92 x=196 y=30></rect><text x=242 y=45>hex digit</text></g><path d="M288 41h20"></path><path d="M176 41a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M196 71h32"></path><path d="M256 71h32"></path><rect height=22 rx=10 ry=10 width=28 x=228 y=60></rect><text x=242 y=75>?</text></g><path d="M288 71a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M308 41h10"></path><path d="M176 41a10 10 0 0 0 -10 10v40a10 10 0 0 0 10 10"></path><g><path d="M176 101h29.5"></path><path d="M278.5 101h29.5"></path><text class=comment x=242 y=106>1-6 times</text></g><path d="M308 101a10 10 0 0 0 10 -10v-40a10 10 0 0 0 -10 -10"></path></g><path d="M318 41h10"></path></g><g><path d="M328 41h0"></path><path d="M548 41h0"></path><path d="M328 41a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M348 21h180"></path></g><path d="M528 21a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M328 41h20"></path><g><path d="M348 41h0"></path><path d="M528 41h0"></path><path d="M348 41h10"></path><g><path d="M358 41h0"></path><path d="M386 41h0"></path><rect height=22 rx=10 ry=10 width=28 x=358 y=30></rect><text x=372 y=45>-</text></g><path d="M386 41h10"></path><path d="M396 41h10"></path><g><path d="M406 41h0"></path><path d="M518 41h0"></path><path d="M406 41h10"></path><g><path d="M416 41h0"></path><path d="M508 41h0"></path><rect height=22 width=92 x=416 y=30></rect><text x=462 y=45>hex digit</text></g><path d="M508 41h10"></path><path d="M416 41a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M416 71h9.5"></path><path d="M498.5 71h9.5"></path><text class=comment x=462 y=76>1-6 times</text></g><path d="M508 71a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M518 41h10"></path></g><path d="M528 41h20"></path></g><path d="M 548 41 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 2.48 + <dd><svg class=railroad-diagram height=222 width=600><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><g><path d="M40 31h0"></path><path d="M108 31h0"></path><path d="M40 31h20"></path><g><path d="M60 31h0"></path><path d="M88 31h0"></path><rect height=22 rx=10 ry=10 width=28 x=60 y=20></rect><text x=74 y=35>U</text></g><path d="M88 31h20"></path><path d="M40 31a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M60 61h0"></path><path d="M88 61h0"></path><rect height=22 rx=10 ry=10 width=28 x=60 y=50></rect><text x=74 y=65>u</text></g><path d="M88 61a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M108 31h10"></path><g><path d="M118 31h0"></path><path d="M146 31h0"></path><rect height=22 rx=10 ry=10 width=28 x=118 y=20></rect><text x=132 y=35>+</text></g><path d="M146 31h10"></path><g><path d="M156 31h0"></path><path d="M559 31h0"></path><path d="M156 31h20"></path><g><path d="M176 31h115.5"></path><path d="M423.5 31h115.5"></path><path d="M291.5 31h10"></path><g><path d="M301.5 31h0"></path><path d="M413.5 31h0"></path><path d="M301.5 31h10"></path><g><path d="M311.5 31h0"></path><path d="M403.5 31h0"></path><rect height=22 width=92 x=311.5 y=20></rect><text x=357.5 y=35>hex digit</text></g><path d="M403.5 31h10"></path><path d="M311.5 31a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M311.5 61h9.5"></path><path d="M394 61h9.5"></path><text class=comment x=357.5 y=66>1-6 times</text></g><path d="M403.5 61a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M413.5 31h10"></path></g><path d="M539 31h20"></path><path d="M156 31a10 10 0 0 1 10 10v50a10 10 0 0 0 10 10"></path><g><path d="M176 101h0"></path><path d="M539 101h0"></path><g><path d="M176 101h0"></path><path d="M328 101h0"></path><path d="M176 101a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M196 81h112"></path></g><path d="M308 81a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M176 101h20"></path><g><path d="M196 101h0"></path><path d="M308 101h0"></path><path d="M196 101h10"></path><g><path d="M206 101h0"></path><path d="M298 101h0"></path><rect height=22 width=92 x=206 y=90></rect><text x=252 y=105>hex digit</text></g><path d="M298 101h10"></path><path d="M206 101a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M206 131h9.5"></path><path d="M288.5 131h9.5"></path><text class=comment x=252 y=136>1-5 times</text></g><path d="M298 131a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M308 101h20"></path></g><path d="M328 101h10"></path><g><path d="M338 101h0"></path><path d="M529 101h0"></path><path d="M338 101h10"></path><g><path d="M348 101h71.5"></path><path d="M447.5 101h71.5"></path><rect height=22 rx=10 ry=10 width=28 x=419.5 y=90></rect><text x=433.5 y=105>?</text></g><path d="M519 101h10"></path><path d="M348 101a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M348 131h0"></path><path d="M519 131h0"></path><text class=comment x=433.5 y=136>1 to (6 - digits) times</text></g><path d="M519 131a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M529 101h10"></path></g><path d="M539 101a10 10 0 0 0 10 -10v-50a10 10 0 0 1 10 -10"></path><path d="M156 31a10 10 0 0 1 10 10v110a10 10 0 0 0 10 10"></path><g><path d="M176 161h25.5"></path><path d="M513.5 161h25.5"></path><path d="M201.5 161h10"></path><g><path d="M211.5 161h0"></path><path d="M323.5 161h0"></path><path d="M211.5 161h10"></path><g><path d="M221.5 161h0"></path><path d="M313.5 161h0"></path><rect height=22 width=92 x=221.5 y=150></rect><text x=267.5 y=165>hex digit</text></g><path d="M313.5 161h10"></path><path d="M221.5 161a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M221.5 191h9.5"></path><path d="M304 191h9.5"></path><text class=comment x=267.5 y=196>1-6 times</text></g><path d="M313.5 191a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M323.5 161h10"></path><path d="M333.5 161h10"></path><g><path d="M343.5 161h0"></path><path d="M371.5 161h0"></path><rect height=22 rx=10 ry=10 width=28 x=343.5 y=150></rect><text x=357.5 y=165>-</text></g><path d="M371.5 161h10"></path><path d="M381.5 161h10"></path><g><path d="M391.5 161h0"></path><path d="M503.5 161h0"></path><path d="M391.5 161h10"></path><g><path d="M401.5 161h0"></path><path d="M493.5 161h0"></path><rect height=22 width=92 x=401.5 y=150></rect><text x=447.5 y=165>hex digit</text></g><path d="M493.5 161h10"></path><path d="M401.5 161a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M401.5 191h9.5"></path><path d="M484 191h9.5"></path><text class=comment x=447.5 y=196>1-6 times</text></g><path d="M493.5 191a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M503.5 161h10"></path></g><path d="M539 161a10 10 0 0 0 10 -10v-110a10 10 0 0 1 10 -10"></path></g><path d="M 559 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 2.49 2.50 <dt id=〈include-match〉-diagram><a class=self-link href=#〈include-match〉-diagram></a>〈include-match〉</dt> 2.51 <dd><svg class=railroad-diagram height=62 width=137><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 31h10"></path><g><path d="M50 31h0"></path><path d="M86 31h0"></path><rect height=22 rx=10 ry=10 width=36 x=50 y=20></rect><text x=68 y=35>~=</text></g><path d="M86 31h10"></path><path d="M 96 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 2.52 @@ -1251,13 +1249,32 @@ 2.53 2.54 <ol> 2.55 <li> 2.56 - Consume as many <a href=#hex-digit>hex digits</a> or U+003F QUESTION MARK (?) as possible, 2.57 - but no more than 6. 2.58 - 2.59 - <li> 2.60 - Create a new <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> 2.61 - with its <a href=#unicode-range-start title=unicode-range-start>start</a> set to the result of the previous step, 2.62 - and with its <a href=#unicode-range-end title=unicode-range-end>end</a> initially unset. 2.63 + Consume as many <a href=#hex-digit>hex digits</a> as possible, but no more than 6. 2.64 + If less than 6 <a href=#hex-digit>hex digits</a> were consumed, 2.65 + consume as many U+003F QUESTION MARK (?) <a href=#code-point>code points</a> as possible, 2.66 + but no more than enough to make the total of <a href=#hex-digit>hex digits</a> and U+003F QUESTION MARK (?) <a href=#code-point>code points</a> equal to 6. 2.67 + 2.68 +<p> If any U+003F QUESTION MARK (?) <a href=#code-point>code points</a> were consumed, 2.69 + then: 2.70 + 2.71 + <ol> 2.72 + <li> 2.73 + Interpret the consumed <a href=#code-point>code points</a> as a hexadecimal number, 2.74 + with the U+003F QUESTION MARK (?) <a href=#code-point>code points</a> replaced by U+0030 DIGIT ZERO (0) <a href=#code-point>code points</a>. 2.75 + This is the <a href=#unicode-range-start>start of the range</a>. 2.76 + 2.77 + <li> 2.78 + Interpret the consumed <a href=#code-point>code points</a> as a hexadecimal number again, 2.79 + with the U+003F QUESTION MARK (?) <a href=#code-point>code point</a> replaced by U+0046 LATIN CAPITAL LETTER F (F) <a href=#code-point>code points</a>. 2.80 + This is the <a href=#unicode-range-end>end of the range</a>. 2.81 + 2.82 + <li> 2.83 + Return a new <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> with the above start and end. 2.84 + </ol> 2.85 + 2.86 +<p> Otherwise, 2.87 + interpret the digits as a hexadecimal number. 2.88 + This is the <a href=#unicode-range-start>start of the range</a>. 2.89 2.90 <li> 2.91 If the <a href=#next-input-code-point title="next input code point">next 2 input code point</a> are 2.92 @@ -1265,16 +1282,19 @@ 2.93 then: 2.94 2.95 <ol> 2.96 - <li> 2.97 - Consume the <a href=#next-input-code-point>next input code point</a>. 2.98 + <li>Consume the <a href=#next-input-code-point>next input code point</a>. 2.99 2.100 <li> 2.101 Consume as many <a href=#hex-digit>hex digits</a> as possible, but no more than 6. 2.102 - Set the <a href=#unicode-range-end title=unicode-range-end>unicode-range’s end</a> to the result. 2.103 + Interpret the digits as a hexadecimal number. 2.104 + This is the <a href=#unicode-range-end>end of the range</a>. 2.105 </ol> 2.106 2.107 <li> 2.108 - Return the token. 2.109 + Otherwise, the <a href=#unicode-range-end>end of the range</a> is the <a href=#unicode-range-start>start of the range</a>. 2.110 + 2.111 + <li> 2.112 + Return the <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> with the above start and end. 2.113 </ol> 2.114 2.115 2.116 @@ -2918,6 +2938,9 @@ 2.117 e.g. two consecutive <a class=css-code data-link-type=token href=#tokendef-ident>〈ident〉</a>s. 2.118 2.119 <li> 2.120 + The <a class=css-code data-link-type=token href=#tokendef-unicode-range>〈unicode-range〉</a> token is now more restrictive. 2.121 + 2.122 + <li> 2.123 Apply the <a href=http://www.w3.org/TR/CSS21/syndata.html#unexpected-eof>EOF error handling rule</a> in the tokenizer 2.124 and emit normal <a class=css-code data-link-type=token href=#tokendef-string>〈string〉</a> and <a class=css-code data-link-type=token href=#tokendef-url>〈url〉</a> tokens rather than BAD_STRING or BAD_URI 2.125 on EOF. 2.126 @@ -3145,7 +3168,7 @@ 2.127 2.128 <h3 class="no-num no-ref heading settled heading" id=informative><span class=content> 2.129 Informative References</span><a class=self-link href=#informative></a></h3> 2.130 -<div data-fill-with=informative-references><dl><dt id=css-variables title=CSS-VARIABLES><a class=self-link href=#css-variables></a>[CSS-VARIABLES]<dd>Luke Macpherson; Tab Atkins Jr.; Daniel Glazman. <a href=http://www.w3.org/TR/2012/WD-css-variables-20120410/>CSS Variables Module Level 1</a>. 10 April 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css-variables-20120410/>http://www.w3.org/TR/2012/WD-css-variables-20120410/</a><dt id=css3-animations title=CSS3-ANIMATIONS><a class=self-link href=#css3-animations></a>[CSS3-ANIMATIONS]<dd>Dean Jackson; et al. <a href=http://www.w3.org/TR/2012/WD-css3-animations-20120403/>CSS Animations</a>. 3 April 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css3-animations-20120403/>http://www.w3.org/TR/2012/WD-css3-animations-20120403/</a><dt id=css3-conditional title=CSS3-CONDITIONAL><a class=self-link href=#css3-conditional></a>[CSS3-CONDITIONAL]<dd>L. David Baron. <a href=http://www.w3.org/TR/2012/WD-css3-conditional-20121213/>CSS Conditional Rules Module Level 3</a>. 13 December 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css3-conditional-20121213/>http://www.w3.org/TR/2012/WD-css3-conditional-20121213/</a><dt id=css3-fonts title=CSS3-FONTS><a class=self-link href=#css3-fonts></a>[CSS3-FONTS]<dd>John Daggett. <a href=http://www.w3.org/TR/2012/WD-css3-fonts-20121211/>CSS Fonts Module Level 3</a>. 11 December 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css3-fonts-20121211/>http://www.w3.org/TR/2012/WD-css3-fonts-20121211/</a><dt id=mediaq title=MEDIAQ><a class=self-link href=#mediaq></a>[MEDIAQ]<dd>Florian Rivoal. <a href=http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/>Media Queries</a>. 19 June 2012. W3C Recommendation. URL: <a href=http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/>http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/</a></dl></div> 2.131 +<div data-fill-with=informative-references><dl><dt id=css-variables title=CSS-VARIABLES><a class=self-link href=#css-variables></a>[CSS-VARIABLES]<dd>Luke Macpherson; Tab Atkins Jr.; Daniel Glazman. <a href=http://www.w3.org/TR/2012/WD-css-variables-20120410/>CSS Variables Module Level 1</a>. 10 April 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css-variables-20120410/>http://www.w3.org/TR/2012/WD-css-variables-20120410/</a><dt id=css3-animations title=CSS3-ANIMATIONS><a class=self-link href=#css3-animations></a>[CSS3-ANIMATIONS]<dd>Dean Jackson; et al. <a href=http://www.w3.org/TR/2012/WD-css3-animations-20120403/>CSS Animations</a>. 3 April 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css3-animations-20120403/>http://www.w3.org/TR/2012/WD-css3-animations-20120403/</a><dt id=css3-conditional title=CSS3-CONDITIONAL><a class=self-link href=#css3-conditional></a>[CSS3-CONDITIONAL]<dd>L. David Baron. <a href=http://www.w3.org/TR/2012/WD-css3-conditional-20121213/>CSS Conditional Rules Module Level 3</a>. 13 December 2012. W3C Working Draft. (Work in progress.) URL: <a href=http://www.w3.org/TR/2012/WD-css3-conditional-20121213/>http://www.w3.org/TR/2012/WD-css3-conditional-20121213/</a><dt id=mediaq title=MEDIAQ><a class=self-link href=#mediaq></a>[MEDIAQ]<dd>Florian Rivoal. <a href=http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/>Media Queries</a>. 19 June 2012. W3C Recommendation. URL: <a href=http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/>http://www.w3.org/TR/2012/REC-css3-mediaqueries-20120619/</a></dl></div> 2.132 2.133 <h2 class="no-num no-ref heading settled heading" id=index><span class=content> 2.134 Index</span><a class=self-link href=#index></a></h2> 2.135 @@ -3211,6 +3234,7 @@ 2.136 <li>〈dimension〉, <a href=#tokendef-dimension title="section 4">4</a> 2.137 <li>encoding, <a href=#encoding title="section 8.2">8.2</a> 2.138 <li>ending token, <a href=#ending-token title="section 5.4.7">5.4.7</a> 2.139 +<li>end of the range, <a href=#unicode-range-end title="section 4">4</a> 2.140 <li>〈EOF〉, <a href=#tokendef-eof title="section 5.2">5.2</a> 2.141 <li>EOF code point, <a href=#eof-code-point title="section 4.2">4.2</a> 2.142 <li>escaping, <a href=#escaping0 title="section 2.1">2.1</a> 2.143 @@ -3256,6 +3280,7 @@ 2.144 <li><signed-integer>, <a href=#typedef-signed-integer title="section 6.2">6.2</a> 2.145 <li><signless-integer>, <a href=#typedef-signless-integer title="section 6.2">6.2</a> 2.146 <li>simple block, <a href=#simple-block title="section 5">5</a> 2.147 +<li>start of the range, <a href=#unicode-range-start title="section 4">4</a> 2.148 <li>starts with an identifier, <a href=#check-if-three-code-points-would-start-an-identifier0 title="section 4.3.9">4.3.9</a> 2.149 <li>starts with a number, <a href=#check-if-three-code-points-would-start-a-number0 title="section 4.3.10">4.3.10</a> 2.150 <li>starts with a valid escape, <a href=#check-if-two-code-points-are-a-valid-escape0 title="section 4.3.8">4.3.8</a> 2.151 @@ -3269,8 +3294,6 @@ 2.152 <li>surrogate code point, <a href=#surrogate-code-point title="section 4.2">4.2</a> 2.153 <li>top-level flag, <a href=#top-level-flag title="section 5.4.1">5.4.1</a> 2.154 <li>〈unicode-range〉, <a href=#tokendef-unicode-range title="section 4">4</a> 2.155 -<li>unicode-range-end, <a href=#unicode-range-end title="section 4">4</a> 2.156 -<li>unicode-range-start, <a href=#unicode-range-start title="section 4">4</a> 2.157 <li>uppercase letter, <a href=#uppercase-letter title="section 4.2">4.2</a> 2.158 <li>〈url〉, <a href=#tokendef-url title="section 4">4</a> 2.159 <li>〈whitespace〉, <a href=#tokendef-whitespace title="section 4">4</a>
3.1 --- a/css-syntax/Overview.src.html Wed Sep 04 16:48:16 2013 +0200 3.2 +++ b/css-syntax/Overview.src.html Wed Sep 04 18:46:11 2013 +0100 3.3 @@ -410,18 +410,15 @@ 3.4 3.5 <li> 3.6 <<<unicode-range>>> tokens have 3.7 - a <dfn id=unicode-range-start title=unicode-range-start>start</dfn> made of one to six <a>hex digits</a> or U+003F QUESTION MARK (?) code points, 3.8 - and and optional <dfn id=unicode-range-end title=unicode-range-end>end</dfn> made of one to six <a>hex digits</a>. 3.9 + a <dfn id=unicode-range-start title="start of the range">start</dfn> 3.10 + and an <dfn id=unicode-range-end title="end of the range">end</dfn>, 3.11 + a pair of integers. 3.12 + 3.13 </ul> 3.14 3.15 Note: The type flag of hash tokens is used in the Selectors syntax [[SELECT]]. 3.16 Only hash tokens with the "id" type are valid <a href="http://www.w3.org/TR/selectors/#id-selectors">ID selectors</a>. 3.17 3.18 - Note: The syntax of <<<unicode-range>>> tokens defined in this specification 3.19 - is a super-set of the <<urange>> value accepted by ''@font-face''’s 'unicode-range' descriptor. [[CSS3-FONTS]] 3.20 - For example, ''U+4??6'' and ''U+1??-300'' are valid <<<unicode-range>>> tokens 3.21 - but not valid <<urange>> values. 3.22 - 3.23 Note: As a technical note, 3.24 the tokenizer defined here requires only three <a>code points</a> of look-ahead. 3.25 The tokens it produces are designed to allow Selectors to be parsed with one token of look-ahead, 3.26 @@ -451,6 +448,7 @@ 3.27 The generated SVG is copied here so that JavaScript is not required 3.28 to view the spec. 3.29 --> 3.30 + 3.31 <dl> 3.32 <dt id="comment-diagram">comment</dt> 3.33 <dd><svg class="railroad-diagram" width="497" height="81"><g transform="translate(.5 .5)"><path d="M 20 31 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 41h10"></path><g><path d="M50 41h0"></path><path d="M86 41h0"></path><rect x="50" y="30" width="36" height="22" rx="10" ry="10"></rect><text x="68" y="45">/*</text></g><path d="M86 41h10"></path><g><path d="M96 41h0"></path><path d="M400 41h0"></path><path d="M96 41a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M116 21h264"></path></g><path d="M380 21a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M96 41h20"></path><g><path d="M116 41h0"></path><path d="M380 41h0"></path><path d="M116 41h10"></path><g><path d="M126 41h0"></path><path d="M370 41h0"></path><rect x="126" y="30" width="244" height="22"></rect><text x="248" y="45">anything but * followed by /</text></g><path d="M370 41h10"></path><path d="M126 41a10 10 0 0 0 -10 10v0a10 10 0 0 0 10 10"></path><g><path d="M126 61h244"></path></g><path d="M370 61a10 10 0 0 0 10 -10v0a10 10 0 0 0 -10 -10"></path></g><path d="M380 41h20"></path></g><path d="M400 41h10"></path><g><path d="M410 41h0"></path><path d="M446 41h0"></path><rect x="410" y="30" width="36" height="22" rx="10" ry="10"></rect><text x="428" y="45">*/</text></g><path d="M446 41h10"></path><path d="M 456 41 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 3.34 @@ -501,7 +499,7 @@ 3.35 <dd><svg class="railroad-diagram" width="233" height="62"><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 31h10"></path><g><path d="M50 31h0"></path><path d="M134 31h0"></path><rect x="50" y="20" width="84" height="22"></rect><text x="92" y="35">〈number〉</text></g><path d="M134 31h10"></path><path d="M144 31h10"></path><g><path d="M154 31h0"></path><path d="M182 31h0"></path><rect x="154" y="20" width="28" height="22" rx="10" ry="10"></rect><text x="168" y="35">%</text></g><path d="M182 31h10"></path><path d="M 192 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 3.36 3.37 <dt id="〈unicode-range〉-diagram">〈unicode-range〉</dt> 3.38 - <dd><svg class="railroad-diagram" width="589" height="132"><g transform="translate(.5 .5)"><path d="M 20 31 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><g><path d="M40 41h0"></path><path d="M108 41h0"></path><path d="M40 41h20"></path><g><path d="M60 41h0"></path><path d="M88 41h0"></path><rect x="60" y="30" width="28" height="22" rx="10" ry="10"></rect><text x="74" y="45">U</text></g><path d="M88 41h20"></path><path d="M40 41a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M60 71h0"></path><path d="M88 71h0"></path><rect x="60" y="60" width="28" height="22" rx="10" ry="10"></rect><text x="74" y="75">u</text></g><path d="M88 71a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M108 41h10"></path><g><path d="M118 41h0"></path><path d="M146 41h0"></path><rect x="118" y="30" width="28" height="22" rx="10" ry="10"></rect><text x="132" y="45">+</text></g><path d="M146 41h10"></path><g><path d="M156 41h0"></path><path d="M328 41h0"></path><path d="M156 41h10"></path><g><path d="M166 41h0"></path><path d="M318 41h0"></path><path d="M166 41h10"></path><g><path d="M176 41h0"></path><path d="M308 41h0"></path><path d="M176 41h20"></path><g><path d="M196 41h0"></path><path d="M288 41h0"></path><rect x="196" y="30" width="92" height="22"></rect><text x="242" y="45">hex digit</text></g><path d="M288 41h20"></path><path d="M176 41a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M196 71h32"></path><path d="M256 71h32"></path><rect x="228" y="60" width="28" height="22" rx="10" ry="10"></rect><text x="242" y="75">?</text></g><path d="M288 71a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M308 41h10"></path><path d="M176 41a10 10 0 0 0 -10 10v40a10 10 0 0 0 10 10"></path><g><path d="M176 101h29.5"></path><path d="M278.5 101h29.5"></path><text x="242" y="106" class="comment">1-6 times</text></g><path d="M308 101a10 10 0 0 0 10 -10v-40a10 10 0 0 0 -10 -10"></path></g><path d="M318 41h10"></path></g><g><path d="M328 41h0"></path><path d="M548 41h0"></path><path d="M328 41a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M348 21h180"></path></g><path d="M528 21a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M328 41h20"></path><g><path d="M348 41h0"></path><path d="M528 41h0"></path><path d="M348 41h10"></path><g><path d="M358 41h0"></path><path d="M386 41h0"></path><rect x="358" y="30" width="28" height="22" rx="10" ry="10"></rect><text x="372" y="45">-</text></g><path d="M386 41h10"></path><path d="M396 41h10"></path><g><path d="M406 41h0"></path><path d="M518 41h0"></path><path d="M406 41h10"></path><g><path d="M416 41h0"></path><path d="M508 41h0"></path><rect x="416" y="30" width="92" height="22"></rect><text x="462" y="45">hex digit</text></g><path d="M508 41h10"></path><path d="M416 41a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M416 71h9.5"></path><path d="M498.5 71h9.5"></path><text x="462" y="76" class="comment">1-6 times</text></g><path d="M508 71a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M518 41h10"></path></g><path d="M528 41h20"></path></g><path d="M 548 41 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 3.39 + <dd><svg class="railroad-diagram" width="600" height="222"><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><g><path d="M40 31h0"></path><path d="M108 31h0"></path><path d="M40 31h20"></path><g><path d="M60 31h0"></path><path d="M88 31h0"></path><rect x="60" y="20" width="28" height="22" rx="10" ry="10"></rect><text x="74" y="35">U</text></g><path d="M88 31h20"></path><path d="M40 31a10 10 0 0 1 10 10v10a10 10 0 0 0 10 10"></path><g><path d="M60 61h0"></path><path d="M88 61h0"></path><rect x="60" y="50" width="28" height="22" rx="10" ry="10"></rect><text x="74" y="65">u</text></g><path d="M88 61a10 10 0 0 0 10 -10v-10a10 10 0 0 1 10 -10"></path></g><path d="M108 31h10"></path><g><path d="M118 31h0"></path><path d="M146 31h0"></path><rect x="118" y="20" width="28" height="22" rx="10" ry="10"></rect><text x="132" y="35">+</text></g><path d="M146 31h10"></path><g><path d="M156 31h0"></path><path d="M559 31h0"></path><path d="M156 31h20"></path><g><path d="M176 31h115.5"></path><path d="M423.5 31h115.5"></path><path d="M291.5 31h10"></path><g><path d="M301.5 31h0"></path><path d="M413.5 31h0"></path><path d="M301.5 31h10"></path><g><path d="M311.5 31h0"></path><path d="M403.5 31h0"></path><rect x="311.5" y="20" width="92" height="22"></rect><text x="357.5" y="35">hex digit</text></g><path d="M403.5 31h10"></path><path d="M311.5 31a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M311.5 61h9.5"></path><path d="M394 61h9.5"></path><text x="357.5" y="66" class="comment">1-6 times</text></g><path d="M403.5 61a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M413.5 31h10"></path></g><path d="M539 31h20"></path><path d="M156 31a10 10 0 0 1 10 10v50a10 10 0 0 0 10 10"></path><g><path d="M176 101h0"></path><path d="M539 101h0"></path><g><path d="M176 101h0"></path><path d="M328 101h0"></path><path d="M176 101a10 10 0 0 0 10 -10v0a10 10 0 0 1 10 -10"></path><g><path d="M196 81h112"></path></g><path d="M308 81a10 10 0 0 1 10 10v0a10 10 0 0 0 10 10"></path><path d="M176 101h20"></path><g><path d="M196 101h0"></path><path d="M308 101h0"></path><path d="M196 101h10"></path><g><path d="M206 101h0"></path><path d="M298 101h0"></path><rect x="206" y="90" width="92" height="22"></rect><text x="252" y="105">hex digit</text></g><path d="M298 101h10"></path><path d="M206 101a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M206 131h9.5"></path><path d="M288.5 131h9.5"></path><text x="252" y="136" class="comment">1-5 times</text></g><path d="M298 131a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M308 101h20"></path></g><path d="M328 101h10"></path><g><path d="M338 101h0"></path><path d="M529 101h0"></path><path d="M338 101h10"></path><g><path d="M348 101h71.5"></path><path d="M447.5 101h71.5"></path><rect x="419.5" y="90" width="28" height="22" rx="10" ry="10"></rect><text x="433.5" y="105">?</text></g><path d="M519 101h10"></path><path d="M348 101a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M348 131h0"></path><path d="M519 131h0"></path><text x="433.5" y="136" class="comment">1 to (6 - digits) times</text></g><path d="M519 131a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M529 101h10"></path></g><path d="M539 101a10 10 0 0 0 10 -10v-50a10 10 0 0 1 10 -10"></path><path d="M156 31a10 10 0 0 1 10 10v110a10 10 0 0 0 10 10"></path><g><path d="M176 161h25.5"></path><path d="M513.5 161h25.5"></path><path d="M201.5 161h10"></path><g><path d="M211.5 161h0"></path><path d="M323.5 161h0"></path><path d="M211.5 161h10"></path><g><path d="M221.5 161h0"></path><path d="M313.5 161h0"></path><rect x="221.5" y="150" width="92" height="22"></rect><text x="267.5" y="165">hex digit</text></g><path d="M313.5 161h10"></path><path d="M221.5 161a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M221.5 191h9.5"></path><path d="M304 191h9.5"></path><text x="267.5" y="196" class="comment">1-6 times</text></g><path d="M313.5 191a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M323.5 161h10"></path><path d="M333.5 161h10"></path><g><path d="M343.5 161h0"></path><path d="M371.5 161h0"></path><rect x="343.5" y="150" width="28" height="22" rx="10" ry="10"></rect><text x="357.5" y="165">-</text></g><path d="M371.5 161h10"></path><path d="M381.5 161h10"></path><g><path d="M391.5 161h0"></path><path d="M503.5 161h0"></path><path d="M391.5 161h10"></path><g><path d="M401.5 161h0"></path><path d="M493.5 161h0"></path><rect x="401.5" y="150" width="92" height="22"></rect><text x="447.5" y="165">hex digit</text></g><path d="M493.5 161h10"></path><path d="M401.5 161a10 10 0 0 0 -10 10v10a10 10 0 0 0 10 10"></path><g><path d="M401.5 191h9.5"></path><path d="M484 191h9.5"></path><text x="447.5" y="196" class="comment">1-6 times</text></g><path d="M493.5 191a10 10 0 0 0 10 -10v-10a10 10 0 0 0 -10 -10"></path></g><path d="M503.5 161h10"></path></g><path d="M539 161a10 10 0 0 0 10 -10v-110a10 10 0 0 1 10 -10"></path></g><path d="M 559 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 3.40 3.41 <dt id="〈include-match〉-diagram">〈include-match〉</dt> 3.42 <dd><svg class="railroad-diagram" width="137" height="62"><g transform="translate(.5 .5)"><path d="M 20 21 v 20 m 10 -20 v 20 m -10 -10 h 20.5"></path><path d="M40 31h10"></path><g><path d="M50 31h0"></path><path d="M86 31h0"></path><rect x="50" y="20" width="36" height="22" rx="10" ry="10"></rect><text x="68" y="35">~=</text></g><path d="M86 31h10"></path><path d="M 96 31 h 20 m -10 -10 v 20 m 10 -20 v 20"></path></g></svg></dd> 3.43 @@ -1135,13 +1133,32 @@ 3.44 3.45 <ol> 3.46 <li> 3.47 - Consume as many <a>hex digits</a> or U+003F QUESTION MARK (?) as possible, 3.48 - but no more than 6. 3.49 - 3.50 - <li> 3.51 - Create a new <<<unicode-range>>> 3.52 - with its <a title=unicode-range-start>start</a> set to the result of the previous step, 3.53 - and with its <a title=unicode-range-end>end</a> initially unset. 3.54 + Consume as many <a>hex digits</a> as possible, but no more than 6. 3.55 + If less than 6 <a>hex digits</a> were consumed, 3.56 + consume as many U+003F QUESTION MARK (?) <a>code points</a> as possible, 3.57 + but no more than enough to make the total of <a>hex digits</a> and U+003F QUESTION MARK (?) <a>code points</a> equal to 6. 3.58 + 3.59 + If any U+003F QUESTION MARK (?) <a>code points</a> were consumed, 3.60 + then: 3.61 + 3.62 + <ol> 3.63 + <li> 3.64 + Interpret the consumed <a>code points</a> as a hexadecimal number, 3.65 + with the U+003F QUESTION MARK (?) <a>code points</a> replaced by U+0030 DIGIT ZERO (0) <a>code points</a>. 3.66 + This is the <a>start of the range</a>. 3.67 + 3.68 + <li> 3.69 + Interpret the consumed <a>code points</a> as a hexadecimal number again, 3.70 + with the U+003F QUESTION MARK (?) <a>code point</a> replaced by U+0046 LATIN CAPITAL LETTER F (F) <a>code points</a>. 3.71 + This is the <a>end of the range</a>. 3.72 + 3.73 + <li> 3.74 + Return a new <<<unicode-range>>> with the above start and end. 3.75 + </ol> 3.76 + 3.77 + Otherwise, 3.78 + interpret the digits as a hexadecimal number. 3.79 + This is the <a>start of the range</a>. 3.80 3.81 <li> 3.82 If the <a title="next input code point">next 2 input code point</a> are 3.83 @@ -1149,16 +1166,19 @@ 3.84 then: 3.85 3.86 <ol> 3.87 - <li> 3.88 - Consume the <a>next input code point</a>. 3.89 + <li>Consume the <a>next input code point</a>. 3.90 3.91 <li> 3.92 Consume as many <a>hex digits</a> as possible, but no more than 6. 3.93 - Set the <a title=unicode-range-end>unicode-range’s end</a> to the result. 3.94 + Interpret the digits as a hexadecimal number. 3.95 + This is the <a>end of the range</a>. 3.96 </ol> 3.97 3.98 <li> 3.99 - Return the token. 3.100 + Otherwise, the <a>end of the range</a> is the <a>start of the range</a>. 3.101 + 3.102 + <li> 3.103 + Return the <<<unicode-range>>> with the above start and end. 3.104 </ol> 3.105 3.106 3.107 @@ -2807,6 +2827,9 @@ 3.108 e.g. two consecutive <<<ident>>>s. 3.109 3.110 <li> 3.111 + The <<<unicode-range>>> token is now more restrictive. 3.112 + 3.113 + <li> 3.114 Apply the <a href="http://www.w3.org/TR/CSS21/syndata.html#unexpected-eof">EOF error handling rule</a> in the tokenizer 3.115 and emit normal <<<string>>> and <<<url>>> tokens rather than BAD_STRING or BAD_URI 3.116 on EOF.