W3C home > Mailing lists > Public > www-style@w3.org > February 2015

Re: [CSS21] Ambiguity in tokenizer, "normative appendix G"

From: Tab Atkins Jr. <jackalmage@gmail.com>
Date: Thu, 5 Feb 2015 06:50:26 +1100
Message-ID: <CAAWBYDC_n6ABGHnzq_=7idBPFQKtvQnsW+d3aqShdfE-zFYekg@mail.gmail.com>
To: Arron Eicholz <arronei@microsoft.com>
Cc: Florian Rivoal <florian@rivoal.net>, Bjoern Hoehrmann <derhoermi@gmx.net>, www-style list <www-style@w3.org>
On Thu, Feb 5, 2015 at 4:29 AM, Arron Eicholz <arronei@microsoft.com> wrote:
> On Wednesday, February 4, 2015 8:33 AM, Florian Rivoal [mailto:florian@rivoal.net] wrote
>> > On 04 Feb 2015, at 04:48, Tab Atkins Jr. <jackalmage@gmail.com> wrote:
>> >
>> > On Tue, Feb 3, 2015 at 12:18 PM, Bjoern Hoehrmann
>> <derhoermi@gmx.net> wrote:
>> >> Hi,
>> >>
>> >>  In http://www.w3.org/TR/2011/REC-CSS2-
>> 20110607/syndata.html#syntax
>> >> "These descriptions are normative. They are also complemented by the
>> >> normative grammar rules presented in Appendix G." but Appendix G is
>> >> marked "This appendix is non-normative." so that doesn't make sense.
>> >>
>> >> In 4.1.1. the specification apparently fails to say whether
>> >> variations of `url(` at the end of the input are FUNCTION or BAD_URI
>> >> tokens. They should probably be BAD_URI tokens.
>> >>
>> >> The CSS 2.2 draft has the same problems.
>> >
>> > As Zack says, all of the CSS2 grammar has been superseded by CSS Syntax.
>
> It hasn't been superseded until the CSS Syntax is a REC, is part of a CSS Snapshot, and/or reaches maturity (two compliant implementations to a test suite).

Hah.  Haha. Ha.  By that definition, virtually all of CSS 2 is still in effect.

> Maybe it's time to change some priorities and finish CSS Syntax. Tab??

I know that no one would pass a test suite right now.  We're nearly
finished implementing a brand new parser based on the spec, and I plan
to adapt our tests into CSS tests.

>> > It's quite easy to trace the execution of the spec's tokenizer.  In
>> > particular, "consume an ident-like token" will eat the `url(`, then
>> > send you down the "consume a url token" algo, which immediately hits
>> > the EOF and returns a (valid) url token with an empty url.
>>
>> Should we remove from 2.2 all the sections that have been superseded?
>
> No, Maybe... (as you can tell I am on the fence here)
>
> No,
> Having an all-encompassing foundational spec is useful in some cases. CSS 2.1 is a foundation for all the browsers and all the new specs, I think it is good to keep it as complete as possible.
>
> Maybe,
> If we decide to remove the content, I don't think we should remove the section headings. The headings are useful for other references we haven't removed from the spec. We would have to put in proper notes directing people to newer specs in the relevant sections but I think that is fairly easy to accomplish.
>
> This will allow CSS2.2 to remain our foundation spec since all the relevant sections are still there just some pointing off to other locations. Also if we follow this pattern, over time CSS 2.2 then CSS 2.3, etc... may make all the sections just a bunch of references. We then can call that document a CSS3 spec, encompassing all the new specs. This then becomes our new foundational spec to build upon.

I don't think this is or should be our goal at all.  The number of
Level 1 specs suggests that CSS is far wider than the CSS2 base we're
still building off of.

~TJ
Received on Wednesday, 4 February 2015 19:51:14 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 22:52:01 UTC